随笔分类 - 比赛题解/总结
摘要:题意: 一个数n,分成m个数a1...am (n,m很大),使a1 OR a2 OR ... OR an的值最小,输出这个最小值。 思路: 首先有一个OR的性质:多个数OR,如果一个数二进制某一位是1, 最后答案这一位一定是1。那么要让结果最小,肯定每个数二进制最高的1位要小。 第二:答案是个OR的
阅读全文
摘要:2020暑假牛客多校9 B - Groundhog and Apple Tree (树形dp) 补题链接 参考博客 题目大意: 给一个树,走每条边会减hp, 走到点会加hp,原地等待也会加hp, 问最少原地等待时间使得能够遍历所有点。每条边最多走两次。 题解: 首先每条边最多走两次那也就dfs一遍树
阅读全文
摘要:C Decrement on the Tree 参考博客 题目: 一棵树每次选择一条路径将路径上的边权都减1,问最少多少次操作后所有边权变成0。 题解: 看了好几篇博客才明白了,这道题的做法是将对边权的处理转变成去想对点的处理,算各点的贡献。之所以可以这样做是基于给一条边的边权-1,相当于访问这条边
阅读全文
摘要:HDU6865 杭电多校8 1011-Kidnapper's Matching Problem (线性基+KMP) 题意: 题意就是计算这个式子,[condition] 当$a_ ... a_{i+m-1}$ 与b数组满足匹配关系时为1。具体匹配关系指$a_ \oplus b_ \in 2^{⊕}
阅读全文
摘要:公式:\(f(n+2)-f(1)\) 但是本题求的是前n+1项的和,所以计算f(n+3)-f(1) 做法:矩阵乘法 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #i
阅读全文
摘要:判断 \(\prod_{i=1}^{n}a[i]! == \prod_{i=1}^{m}b[i]!\) 做法:找两个模数,算一下比较一下就好了。如果上式相等那计算取模也一定相等。 #include<iostream> #include<cstdio> #include<cstring> #inclu
阅读全文
摘要:NC20811 蓝魔法师 (树形DP/树上01背包) 题目链接 学习博客 题目: 给出一棵树,求有多少种删边方案,使得删后的图每个连通块大小小于等于k,两种方案不同当且仅当存在一条边在一个方案中被删除,而在另一个方案中未被删除,答案对998244353取模 。 题解: 没想到是树形DP题,做题太少了
阅读全文
摘要:Xor-MST学习/ 2020牛客暑假多校(五)B.Graph 补题链接 题目大意: 给一个完全图,求异或最小生成树。 题解: 首先先看一下这道题:CF888G 。与本题不同之处是这两个题一个给点的权值,一个给边的权值。但实际上一样可以相互转换。如让本题中a[1]= 0,跑一下dfs,算出所有点的权
阅读全文
摘要:HDU-6820 / 2020杭电多校(五) 1007 Tree 补题链接 参考博客 题意: 在一个无根树上选择一个的子图,要求子图全联通且度数大于k 的点最多只有1个。问该子图最大的权值。 题解: 首先想到枚举这个子图中度数大于k的点,然扩展一下。这个方法复杂度太高。 可以发现叶子节点很好处理,可
阅读全文
摘要:Minimum-cost Flow 参考博客 题目🔗 题意:给n个点,m条边的有向图,有q次询问,每次询问给两个数u, v。用来限制每一条边能使用的最大流量为u/v, 问把1单位从1点到n点的最小花费。(所有边容量相同) 题解: 我们可以设所有边费用为c/v,那输入流量和输出流量设为u/v跑一次D
阅读全文
摘要:参考博客 题目🔗 题意: 一个s串满足s[i] = i % 10,给出p,d数组的构造方法,每次将s串p[i]位换成d[i], 总共得到n + 1个串,对它们进行排名。第i次操作后的排名为r[i]; 输出 \((\sum_{i=0}^{n}(r_{i}*10000019^{i}))\%(1e9+7
阅读全文
摘要:"题目链接" "参考博客" 题目: 有n个宝石和n个箱子,每个箱子只能放一个宝石且第i个宝石不能放在a[i]箱子中,问合适的放法数量,mod 998244353; 题解: 总数减去不合法排列的数量就是要的答案。 计算不合法排列数量时容易明白需要用到容斥的做法。得到公式: $res = n! \sum
阅读全文
摘要:```c++ int T, n, m; struct node{ ll s, v; }a[N], b[N]; bool cmp(const node&x, const node&y){ return x.s = 1){ while(b[l].v && l m || b[l].s > a[r].s) break; res1 += (a[r].s - b[l].s); r --; l ++; } l
阅读全文
摘要:题目: 给出n,f[1],f[2], 已知递推公式:$f[i] = 2 f[i 2] + f[i 1] + i^{4}$;求f[n]; ($n include include include include include include include include include using
阅读全文
摘要:J. u's的影响力 题目: 输入$n,x,y,a,b$ 。输出 $x^{f(n 2)} y^{f(n 1)} a^{[f(n) 1] b}$ .其他f(i)表示Fibonacci数值 题解: 通过观察前几项得到上面的公式。利用矩阵快速幂可以计算很大的Fibonacci数,然后用快速幂求结果。
阅读全文

浙公网安备 33010602011771号