首页 > TAG信息列表 > Noip2019

NOIP2019 Emiya 家今天的饭 [提高组]

题目:Emiya 家今天的饭 网址:https://www.luogu.com.cn/problem/P5664 这道题质量很高。 算法1 暴力 32pts 首先,观察到对于每一种烹饪方法,我们有两种选择:要么不选任何一道菜(食材),要么任选。 最后判断是否合法即可。 代码: #include<iostream> #include<cstring> #include<cstdio> #in

NOIP2019普及组纪念品

【完全背包】NOIP2019普及组(CSP-J)T3:纪念品   蒟蒻没有去CSP-J,今天做背包的时候做了这道题,比18年的T3简单多了(废话18年是摆渡车),个人觉得这道题很适合作为一道背包的进阶题目(其实就是比模板题难一点啊),所以做完以后来这里写下思路供大家参考。虽然很水但我还是调试了半天才过

Emiya家今天的饭 NOIP2019 (CSP?) DP好题 luoguP5664

luogu题目传送门!   首先,硬求可行方案数并不现实,因为不好求(去年考场就这么挂的,虽然那时候比现在更蒟)。 在硬搞可行方案数不行之后,对题目要求的目标进行转换: 可行方案数 = 总方案数 - 不合格方案数。 题目多看几眼,(求最大最小方案数量这种套路),DP无疑。     首先考虑列的限制,发现若

【NOIP2019模拟赛】test

【NOIP2019模拟赛】test 题目描述 分析 对于操作2-4,显然是树链剖分的裸题,重点是操作1 首先,操作1显然只对操作3产生影响,假设当前根为root,操作3的节点为u 如果\(u=root\),显然权值之和为整棵树 如果\(u\neq root\)且\(lca(u,root)\neq u\)那么换根操作不对子树权值和产生影响 如果\(u

NOIP2019 旅行

注意!注意!前方高能!本题卡常!!! 我们发现,所有的狗血剧情都在告诉我们,树的话直接dfs就出来了 那么基环树呢? 其实只要暴力删边,理论上的复杂度是可以过的qwq 但是删哪条边呢? 这里要引出一个基环树的常用操作:拓扑排序求环。具体方法是:在基环树上拓扑排序,然后拓扑序列中不存在的节点就是环中

jzoj6404. 【NOIP2019模拟11.04】B

题目描述 Description Input 从文件b.in中读入数据. 第丬行三个正整数 n, m, K. 接下来 n 行每行 m 个正整数, 表示矩阵A. Output 输出到文件b.out中. 不行, 两个数分别表示机大值和和. Sample Input 3 5 2 1 5 3 3 3 4 1 3 3 4 4 2 4 4 3 Sample Output 4 20 Data Constraint

做题&学习记录(11月)

2019.10.30 XJOI NOIP2019复赛模拟16-day1 T1:随便推一下性质,然后发现要么选最大要么选最小,于是设$dp_{i,0/1}$算一下即可。 T2:注意到无论$b$怎么样,$a_i$一定是越大越好,于是求出每个联通快对应的最大$a_i$,斜率优化即可。 T3:一个巧妙的想法是把左右括号转化为$-1,1$,然后维护前缀和

6392. 【NOIP2019模拟2019.10.26】僵尸

题目描述 题解 吼题但题解怎么这么迷 考虑一种和题解不同的做法(理解) 先把僵尸离散化,h相同的钦(ying)点一个大小 (可以发现这样每种情况只会被算正好一次) 计算完全被占领的方案,然后1-方案/概率 由于大小确定了,所以最后会被分成若干不相连的块,且块中有且仅有一只僵尸 定义一个块的

6389. 【NOIP2019模拟2019.10.26】小w学图论

题目描述 题解 之前做过一次 假设图建好了,设g[i]表示i->j(i<j)的个数 那么ans=∏(n-g[i]),因为连出去的必定会构成一个完全图,颜色互不相同 从n~1染色,点i的方案数是(n-g[i]) 用线段树合并维护集合即可 code #include <algorithm> #include <iostream> #include <cstdlib> #include

For noip2019 初赛(csp)

1962年CCF成立 1984年NOI首次举办 1995年noip首次举办 2019年CSP非专业组首次举办 前序、中序、后序遍历:先访问当前节点,或在中间访问,或在最后访问 前序遍历即为DFS序 哈夫曼编码:哈夫曼编码,主要目的是根据使用频率来最大化节省字符(编码)的存储空间。 https://blog.csdn.net/qq_366

【2019.10.04】NOIP2019模拟训练题

总结 T1 想的时间太久了(1h30min),思路是完全正确的,但对dp本身理解的还不够,以为是错的没打。 T2 贪心(都算不上吧...模拟可能更接近它的本质)就直接过了,没用二分。30min左右就过了。 T3 10分应该能拿到。卡在T1上所以完全抛掉了。 总的来说还是要多刷题多总结,考试的时候要先拿好拿的分,

6358. 【NOIP2019模拟2019.9.15】小ω的仙人掌

题目 题目大意 给你一串二元组\((a_i,b_i)\)的数列。 求最小的区间\([l,r]\)长度,满足\([l,r]\)中的每个二元组选或不选,使得\(\sum a_i=w\)且\(\sum b_i\leq k\) 思考历程 想了好久,想来想去都是一个背包…… 最终决定打暴力…… 正解 先说说GMH大爷的神奇解法。 首先是二分答案\(

JZOJ6341. 【NOIP2019模拟2019.9.4】C

Description 1<=N,Q,0<=ai<=323232323 Solution 考虑倍增。 设f[i][j]表示从i往上跳2^j^步,从i到fa[i][j]的路径上所有点不包括fa[i][j],a[x]|dis(x,i)的和。 考虑合并,从f[i][j-1]转移过来。那么问题在于从fa[i][j-1]应该是从2^j-1^开始. 但是f[fa[i][j-1]][j-1]是从0开始往上的。

noip2019集训测试赛(六)B.匹配

Description Rikka有一张无向联通图 G=⟨V,E⟩ ,其中顶点数 |V|=n ,边数 |E|=n−1 。Rikka可以选择 E 中的一些边删掉。显然这有 2n−1 种方案。 Rikka想知道,有多少种方案使得删边后残余图中的最大匹配数恰好为 m 的倍数。由于答案可能很大,请输出答案对 998244353 取模的余数

【NOIp2019模拟】题解

T1: 显然一定会询问nnn次 考虑如果能求得每个点的前缀异或和 就可以解出整个序列了 知道了sl,srs_l,s_rsl​,sr​之间一个,就可以一次询问[l+1,r][l+1,r][l+1,r]求出另外一个 考虑把rrr向lll连边,所有点向000连边 那最后其实要的就是整个图联通的代价 每个点代价设为前缀异

[补档]noip2019集训测试赛(十五)

Problem A: 传送带 Time Limit: 1000 ms Memory Limit: 256 MB Description 在一个二维平面上有两条传送带,每一条传送带可以看成是一条线段。两条传送带分别为线段AB和线段CD。小y在AB上的移动速度为P,在CD上的移动速度为Q,在平面上的移动速度R。现在,小y想从A点走到D点,请问他最少需

test20190826 NOIP2019 模拟赛

100+100+40=240。我觉得如果没做过第三题考场上却能想出来的都是神仙。 基因突变 【问题描述】 邪恶的 707 刚刚从白垩纪穿越回来,心中产生了一个念头:我要统治人类! 但是统治人类是很庞大且复杂的一个工程,707 尝试了洗脑,催眠,以及武装镇压都没能成功地统治人类,于是她决定从科学上对人

快读

备战noip2019 TG inline int read(){ int ans=0,f=1; char c; c=getchar(); while(c<'0' || c>'9') { if(c=='-') f=-1; c=getchar(); } while(c>='0' && c<='9&

noip2019集训测试赛(二)

Problem A: 余数 Time Limit: 1000 ms Memory Limit: 512 MB Description Input Output Sample Input 3 4 Sample Output 4 HINT Solution 那个所谓\(\sqrt n\)的东西叫做整除分块。 显然对于\(n÷i\),当$i<=\sqrt n $时,每个i都有一种取法 当\(n>=i>\sqrt n\),i每加\(\sqrt n\)

Noip2019暑期训练2

  题目名称 骑士遍历 和谐俱乐部 农场派对 对称二叉树 存盘文件名 knight Beautiful party tree 输入文件名 knight.in Beautiful.in party.in tree.in 输出文件名 knight.out Beautiful.out party.out tree.out 时限 1s

[ 校内OJ ] NOIP2019模拟赛(九)

第一题 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N=1e3+5; 4 int n; 5 double v,u,ans,c[N],d[N]; 6 7 int main() { 8 scanf("%d%lf%lf",&n,&v,&u); 9 for(int i=1;i<=n;i++) scanf("%lf",&c[i]

NOIP2019游记前传

 声明   我的游记是一个完整的体系,如果没有阅读过往届文章,阅读可能会受到障碍。   ~~~上一篇游记的传送门~~~  前言       (编辑中)