随笔分类 - Codeforces
摘要:E. Iva & Pav 把每一项的数拆分成32位二进制,然后求前i项第j位二进制为1的前缀和,如果区间范围内的1等于区间范围,则是可行的,乘上对应位置的大小,每一位求和判断与k的大小 二分+前缀和 点击查看代码 #include<bits/stdc++.h> using namespace std
阅读全文
摘要:根据数据可知,字符串s被分成互不相交的子集,然后在每个子集内根据x的位置经行左右翻转,可知翻转为偶数时恢复原样,所以可以根据差分数组进行求解 点击查看代码 #include<bits/stdc++.h> using namespace std; #define LL long long const
阅读全文
摘要:H. Mad City 题意:b能否不被a抓到。 题解:这是基环树,只要b先与a在环上,b就永远也不会被抓到。 所以,此题就是求a,b到环上的距离,如果有一点b到环上的距离小于a,那么就永远也不会被抓到。 比较简单的找环的方式就是利用拓扑排序,然后就是最短路径的模板了(利用简单的bfs或者dfs就行
阅读全文
摘要:双指针 创建l,r指针,r满足向右走sum+=a[r],r++,不满足l向右走sum-=a[l],l--; 当l==r使,r向右走 当高度不满足时,重新累计sum=0,l指针直接转向r,r++; 然后取r-l最大的区间 点击查看代码 #include<bits/stdc++.h> using nam
阅读全文
摘要:G. ABBC or BACB 贪心 举个例子:BAAAA,BAAAAA,答案是A的总数 注意点:在连续的A中插入B,如:AAABABAA,AAABAA。很明显答案是A的总数减去最小的连续A的个数 点击查看代码 #include<bits/stdc++.h> using namespace std;
阅读全文
浙公网安备 33010602011771号