cf补题
文章平均质量分 65
人工智鸭
这个作者很懒,什么都没留下…
展开
-
Codeforces Round #797 (Div. 3) F(字符串循环节)
kmp原创 2022-06-09 11:27:38 · 540 阅读 · 0 评论 -
CodeCraft-22 and Codeforces Round #795 (Div. 2)(st表)
st表原创 2022-06-02 22:54:12 · 219 阅读 · 0 评论 -
Codeforces Round #792 (Div. 1 + Div. 2) D
题意:给定一个长度为n的序列,你可以不选择k个数,但如果不选择这个数就会对后面选的每一个数伤害加1,问最终能选的最小的总和是多少。思路:首先我们知道这个k个数一定是会被全部选的,白给你的便宜干嘛不收,大不了把k个数都放最后面也能减少答案。接着,我们就可以开始选择k个数了。假定我们选择的数的位置为p1,p2,p3.....p(k-1),pk;则可以将答案分成k段第一段:a[1]+....+a[p1-1];第二段:a[p1+1]+...+a[p2-1]+(p2-p1-1)*1;第三段原创 2022-05-20 16:26:32 · 204 阅读 · 0 评论 -
Codeforces Round #789 (Div. 2) C
写个题解气吐了,卡在b2,后面半小时看的c,应该比较适合我的口味www题意:给定一个全排列,要求你找到四个下标满足a,b,c,d满足pa<pc并且pb>pd;思路:首先我们可以思路变成连边,将数字小的连向数字大的,那我们对于任意两个位置b,c。我们要考虑什么它可以找到多少满足条件的a,d;对于b节点,我们应该在c的后面找有多少个小于它的点;对于c节点,我们应该在b的前面找有多少个小于它的点;于是我们可以用o(n^2)先处理出前缀和;然后在o(n^2)选择任意两个不原创 2022-05-09 01:15:19 · 344 阅读 · 0 评论 -
Educational Codeforces Round 127 (Rated for Div. 2)D(思维)
题意:给定一个长度为n的数组,求|ai-ai-1|,(i>=1&&i<=n),再给定一个x,可以将1-x这x个数插入到这个数组当中,问最后插入完求得的结果最小是多少。思路:一个比较考验思维的题,首先我们得观察出对于任意一个数字x,我们将其插入到a数组中会有什么影响,如果在这个数组中存在a[l]<=x<=a[r],或a[r]<=x<=a[l],那我们插入时这个数字将不会产生贡献。那最终答案序列中一定会出现1和x,所有我们可以将其考虑为只插入1和x.接原创 2022-05-05 16:36:10 · 188 阅读 · 0 评论 -
Codeforces Round #786 (Div. 3)(A-G)
第一次被hack有点难受,不过看到本来e题2400,变成570左右就好受多了(不是)A. Number Transformation题意:给定x,y,问是否存在a,b,使得x*b^a=y,输出任意a,b;思路:由于1<=x,y<=100,于是只需要暴力即可,暴力枚举b,a,由于b是在1-100,b如果为2,a最多也只能为7,于是复杂度为t*100*7,1<=t<=1e4,暴力即可代码:#include<bits/stdc++.h>using nam原创 2022-05-03 14:24:57 · 520 阅读 · 0 评论 -
cf-div 3 780
菜鸟补题A-Vasya and Coins题意:给定a个1和b个2,询问不能通过1和2组成的数的最小值;如1 1则输出4,最大只能组成3;4 0则输出5,最大只能组成4.思路:对于没有1的情况,我们发现永远无法组成1,即输出1.对于有1的情况,我们发现可以组成最大可以组成a+2*b,输出a+2*b+1.代码#include<bits/stdc++.h>#define ll long longusing namespace std;int main(){ in原创 2022-04-03 21:26:15 · 1239 阅读 · 0 评论 -
Educational Codeforces Round 126 (Rated for Div. 2)(A-E)
A-Array Balancing题意:给定两个数组a,b,a数组第i个数可以和b数组的第i个数交换,最终求a1−a2|+|a2−a3|+⋯+|an−1−an||a1−a2|+|a2−a3|+⋯+|an−1−an| ++ |b1−b2|+|b2−b3|+⋯+|bn−1−bn||b1−b2|+|b2−b3|+⋯+|bn−1−bn|的最小值;总结:第一道就dp一开始不太敢写思路:对于数组a1 a2 a2....... anb1 b2 b3........bn当我们遍历到第i个数时,第i-原创 2022-04-10 13:35:48 · 974 阅读 · 0 评论 -
Codeforces Round #781 (Div. 2)(A-D)
A. GCD vs LCM题意:给定一个正整数n,你需要找到四个正整数a,b,c,d,使得 a+b+c+d=n并且gcd(a,b)=lcm(c,d)思路:一个小思维题,一开始看样例在那推每一位的公因子傻掉了,然后发现不就是只要a=n-3,bcd都为1不就满足条件了。代码:#include<bits/stdc++.h>using namespace std;int main(){ int t; cin>>t; while(t--){ int n; c原创 2022-04-17 13:51:38 · 274 阅读 · 0 评论 -
Codeforces Round #782 (Div. 2)(A-D)
搞心态了,第一题怎么交不了,害A. Red Versus Blue题意:给定n,r,b满足条件n=r+b且r>b,输出一个字符串又r个R和b个B,要求该字符串满足条件即连续的r或者b最少。思路:这道题一开始在那找怎么连续最好,后面发现r>b,那么我们只要用B当作隔板将r分成b+1段即可,且每一段R的个数是r/段数+1或者r/段数(因为出发会向下取整,我们得拿出除法mods剩余的r来一个一个加入到原段中。代码:#include<bits/stdc++.h>usi原创 2022-04-18 01:33:59 · 968 阅读 · 2 评论