随笔分类 - OI/ACM题解
摘要:A 发现长度为 的一定是最好的。 #pragma GCC optimize("O3") #include<bits/stdc++.h> using namespace std; #define endl '\n' #define debug(x) cerr << #x << ": " <<
阅读全文
摘要:C 签到题,看看最多加多少条边这个图还是树。 int main(){ int a, b; cin>>a>>b; int res=a*b; if(res&1) puts("NO"); else puts("YES"); return 0; } D 签到题 模拟 int main(){ int T; c
阅读全文
摘要:补一波牛客多校的题解~ A 这题我的想法是记忆化搜索,如果当前状态能够转移到必败态,那么当前状态就是必胜态。 直接枚举的话复杂度是 ,所以我打了个表,将所有必败态存了下来。 下面是 generator ,因为打表程序已经被我丢掉了所以就贴截图了(悲 然后这是 AC 代码
阅读全文
摘要:绝赞自闭 China Round A 模拟。 无解的情况是前后总和不等。 然后当 时就向后填, 时就把后面的搬过来,这样操作就能保证 了。 #pragma GCC optimize("O3") #include<bits/stdc++.h> usin
阅读全文
摘要:传送门 题意 给定一个连通的无向图让你进行加边操作,要求每一对点之间都至少有两条相互分离的路径,求最小的加边数。 两条路径相互分离,是指两条路径没有一条重合的道路。 分析 这意味着,从一个点到另一个点,不能够存在一条边满足:如果不经过这条边,这个点就到不了另一个点。 换句话说,就是不能存在一条边,使
阅读全文
摘要:这场还是很有区分度的(逃 A 贪心,从小到大模拟合并的过程。 #pragma GCC optimize("O3") #include<bits/stdc++.h> using namespace std; #define endl '\n' #define debug(x) cerr << #x <
阅读全文
摘要:这场挺难orz A tag 有二分emm,但我没二分 把严格大于转化为大于等于,然后求个临界点,特判一下边界即可。 #include<bits/stdc++.h> using namespace std; int main(){ int T; cin>>T; while(T--){ int a, b
阅读全文
摘要:传送门:https://codeforces.com/contest/1207 A 模拟 #pragma GCC optimize("O3") #include<bits/stdc++.h> using namespace std; #define endl '\n' #define debug(x
阅读全文
摘要:这题贪心的话似乎不太可行我没想出怎么贪,所以用区间dp来解决。 更好的阅读体验:qwq 分析 表示先手在区间 的最优决策所能给他带来的贡献,因为区间 的总和 是一定的,那么这个最优决策在意味着最大化自己的收益
阅读全文
摘要:分析 如果直接使用LCS来解决,那么复杂度为 ,显然会超时。 因为给出的两个序列的数都是互不相同的,我们将第一个序列的数按 依次编号,然后将第二个序列的数(当然这个数应该是存在于第一个序列的)按照数值映射到相应的编号中,注意到题目所求的LCS恰好就是第二
阅读全文
摘要:传送门: https://www.luogu.com.cn/problem/P3327 https://www.acwing.com/problem/content/1360/ 莫比乌斯反演 + 整除分块 分析 首先,我们给出一个结论: \[ d(ij) = \sum_{x|i} \sum_{y|j
阅读全文
摘要:一发过了 D ,nice A 思维题,注意到排序后,将 插入到 前即可。 #pragma GCC optimize("O3") #include<bits/stdc++.h> using namespace std; #define endl '\n' #de
阅读全文
摘要:传送门:https://www.luogu.com.cn/problem/P4071 分析 就是从 个数中挑 个数,然后求 的错排个数即可。 表示 个数错排的个数,有 错排的通式:\(D_n = n!(1 - \frac{1}{
阅读全文
摘要:这次的题目挺简单的(指签到题 A 最小的数肯定去不掉,而不是最小的数一定可以在一定的操作后去掉,所以答案为 #pragma GCC optimize("O3") #include<bits/stdc++.h> using namespace std; #define endl '
阅读全文
摘要:昨晚觉得 B2 难搞就去搞 D 了,可惜细节没想好,等题解出了补上orz A 分析: 如果二进制的 有 位,那么所求的 对应的二进制位数一定是 (因为要让最高位成为 ),那么 个 是不是就是答案了呢? 是,因为我们能够保证 到 $
阅读全文
摘要:传送门:https://www.luogu.com.cn/problem/P5192 分析 这是一道有源汇上下界最大流的模板题(废话)。 既然是网络流的问题,故应该先将图建出来: 根据题目特征, 我们将少女和每一天看作是图中的点。 当然,因为每一天都有拍照次数的限制,我们可以加一个源点
阅读全文
摘要:upd: 2021.4.28 添加滑动窗口模板供参考。 目录 简介 滑动窗口模板 例题 简介 单调队列是如何优化DP的呢?其实就是推柿子(找到状态转移方程),然后借助柿子里面连续的特征,利用单调队列将查询最值的代价变低,进而达到优化的目的。 滑动窗口模板 模板题传送门:https://www.acw
阅读全文
摘要:传送门:https://codeforces.com/gym/102956 题目大意: 统计满足下列条件的数列的方案数: 非空 严格递增 任意连续三个元素的异或和不为 元素小于等于给定的 分析: 表示以 为尾的方案数。 考虑状态转移: 如果 \(
阅读全文