摘要:
对下脑电波。 题目链接(luogu) 题目链接(at) 发现我们可以找出所有 \(x\) 当且仅当 \(x\) 为质数且 \(x \bmod 5 = 3\),这样任意五个数加起来就必定为合数了。 代码: 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp 阅读全文
摘要:
链接 板题。 三个定义: \(dp_i\) 表示以 \(i\) 为根节点时,其子节点深度的和; \(siz_i\) 表示以 \(i\) 为根节点时,其子树的大小; \(dep_i\) 表示以 \(1\) 为根节点时,所有节点的深度。 参考代码: 点击查看代码 /* Tips: 你数组开小了吗? 你M 阅读全文
该文被密码保护。 阅读全文
摘要:
链接 很一眼。 容易发现除非操作时影响 \(1\) 这个数字,否则答案一定改变,直接特判影响到 \(1\) 这个数字的两种情况即可。 代码: 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? */ #includ 阅读全文
摘要:
感觉要好好补补 set 了。 链接 直接用 set 模拟即可。 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? */ #include<bits/stdc++.h> using namespace std; # 阅读全文
摘要:
链接 参考此题解 比较有意思的期望 dp,记得多特判 0 的情况。 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? */ #include<bits/stdc++.h> using namespace std; 阅读全文
摘要:
链接(luogu) 链接(at) 典题。 整除分块。 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? */ #include<bits/stdc++.h> using namespace std; #defin 阅读全文
摘要:
典题。 发现问题可以变为枚举 \(i\),求出两两数 \(gcd\) 为 \(i\) 的个数,但是这样还是 \(O(n^2)\) 的。 然后可以将两边同时除以 \(i\),原式变为 暴力筛复杂度是 \(O(n\log_2(n))\) 的,加个前缀和时间复杂度为 \(O(n)\)。 点击查看代码 /* 阅读全文
该文被密码保护。 阅读全文
摘要:
题目链接(luogu) 题目链接(cf) 水 2400。 首先我们容易看出,答案具有单调性,然后无法使用数据结构进行优化,这时我们可以直接根号分治,发现总是有一段连续的区间数是相同的,因此我们直接根号分治套二分即可 AC。 参考代码: 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 阅读全文