jjzjj

Codeforces

全部标签

Codeforces Round #791 (Div. 2)(A-D)

CodeforcesRound#791(Div.2)(A-D)A.AvtoBus题意:给你n,问满足4x+6y=n4x+6y=n4x+6y=n的x+yx+yx+y的最小值和最大值是多少?x,yx,yx,y都是非负整数。题解:n如果是奇数,无解。如果是偶数,等式除以2,考虑2x+3y=n2x+3y=n2x+3y=n。要想使得x+yx+yx+y尽可能大,那么x要尽量多,就需要找最小的y满足n−3yn-3yn−3y是偶数,分别讨论摸3的各种情况。反之同理。#includeusingnamespacestd;typedeflonglongll;typedefpairint,int>pii;consti

Codeforces Round 871 (Div. 4)

A.LoveStory题意:给定n个长度为10的字符串,问其与codeforces字符串的对应下标字母不同的个数。分析:对于每个字符串从前往后依次和“codeforces”对应字符比较然后统计不同字母数即可code:#includeusingnamespacestd;intmain(){ std::ios::sync_with_stdio(false); cin.tie(0),cout.tie(0); strings="codeforces"; intt; cin>>t; while(t--) { strings2; cin>>s2; intcnt=0; for(inti=0

Codeforces Round 860 (Div. 2) 题解

AShowstopper#includeusingnamespacestd;#defineFor(i,n)for(inti=1;in;i++)#defineFork(i,k,n)for(inti=k;in;i++)#defineForkD(i,k,n)for(inti=n;i>=k;i--)#defineRep(i,n)for(inti=0;in;i++)#defineForD(i,n)for(inti=n;i;i--)#defineRepD(i,n)for(inti=n;i>=0;i--)#defineForp(x)for(intp=pre[x];p;p=next[p])#defineFor

Codeforces Round 867 (Div. 3)

A.TubeTubeFeed分析:从所有a[i]+i-1code:#includeusingnamespacestd;constintN=55;inta[N],b[N];intmain(){std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0); intt; cin>>t; while(t--) { intn,m; cin>>n>>m; for(inti=0;i>a[i]; for(inti=0;i>b[i]; ints=0,res=0,idx=-1; boolflag=false; for(inti

Educational Codeforces Round 132 div.2 A-F题解

视频讲解:TBDA.ThreeDoors题目大意有333个门和333把对应的钥匙。其中222把钥匙分别在222扇门后,111把在手上。打开门才能获得门后的钥匙,问能否打开所有的门。题解判断前两次开的门后,是否有钥匙即可。参考代码#includeusingnamespacestd;typedeflonglongll;intmain(){ intT,x,a[5],now; scanf("%d",&T); while(T--) { scanf("%d%d%d%d",&x,&a[1],&a[2],&a[3]); now=3^2^1^a[1]^a[2]^a[3]; if(a[now]==0||a[

Educational Codeforces Round 132 div.2 A-F题解

视频讲解:TBDA.ThreeDoors题目大意有333个门和333把对应的钥匙。其中222把钥匙分别在222扇门后,111把在手上。打开门才能获得门后的钥匙,问能否打开所有的门。题解判断前两次开的门后,是否有钥匙即可。参考代码#includeusingnamespacestd;typedeflonglongll;intmain(){ intT,x,a[5],now; scanf("%d",&T); while(T--) { scanf("%d%d%d%d",&x,&a[1],&a[2],&a[3]); now=3^2^1^a[1]^a[2]^a[3]; if(a[now]==0||a[

Codeforces CodeTON Round 2 (Div. 1 + Div. 2, Rated, Prizes!) A-D 题解

A.Two0-1Sequences 大致翻译:两个长度为n和m的二进制序列a和b(题目保证n>=m)两个操作:op1: 改变a(2)为min(a(1),a(2)),并且移除a(1)op2: 改变a(2)为max(a(1),a(2)),并且移除a(1)每次操作后,原先的a(i)变成a(i+1),长度减少1,即前移。  a二进制序列能否通过这两个操作变成b二进制序列?解题思路:刚开始想的是判断a2后缀跟a1后缀是否相同,再判断,a1前面有没有1和0(因为有1和0,就表示op1和op2可以随意完成)。写的时候又陆陆续续发现需要几个特判,想a1长度为1等。于是就debug,慢慢发现只要前面有a2的第一

Codeforces CodeTON Round 2 (Div. 1 + Div. 2, Rated, Prizes!) A-D 题解

A.Two0-1Sequences 大致翻译:两个长度为n和m的二进制序列a和b(题目保证n>=m)两个操作:op1: 改变a(2)为min(a(1),a(2)),并且移除a(1)op2: 改变a(2)为max(a(1),a(2)),并且移除a(1)每次操作后,原先的a(i)变成a(i+1),长度减少1,即前移。  a二进制序列能否通过这两个操作变成b二进制序列?解题思路:刚开始想的是判断a2后缀跟a1后缀是否相同,再判断,a1前面有没有1和0(因为有1和0,就表示op1和op2可以随意完成)。写的时候又陆陆续续发现需要几个特判,想a1长度为1等。于是就debug,慢慢发现只要前面有a2的第一

codeforces 54B Cutting Jigsaw Puzzle题解

详情请见:CSDN阿史大杯茶  https://blog.csdn.net/weixin_66946161/article/details/126093709题目意思本题主要意思就是切成一个个小块(小块的面积相同,但小块不相同),使小块之间互不相等,而且旋转之后相同,也算小块相同!例:ABCACDDB这两个是相同的!最后输出一共可以有多少种切法,使他们互不相等,然后输出切出的最小块(这里要注意如果面积相等,则输出a小的那一个)比如说:和,是要输出!思路:这道题主要就是取块以及旋转判断:取块:这个很简单,只需双重for循环,不停的枚举中的a和b,如果a或b不能被N或M整除,那么是不行的所以要co

codeforces 54B Cutting Jigsaw Puzzle题解

详情请见:CSDN阿史大杯茶  https://blog.csdn.net/weixin_66946161/article/details/126093709题目意思本题主要意思就是切成一个个小块(小块的面积相同,但小块不相同),使小块之间互不相等,而且旋转之后相同,也算小块相同!例:ABCACDDB这两个是相同的!最后输出一共可以有多少种切法,使他们互不相等,然后输出切出的最小块(这里要注意如果面积相等,则输出a小的那一个)比如说:和,是要输出!思路:这道题主要就是取块以及旋转判断:取块:这个很简单,只需双重for循环,不停的枚举中的a和b,如果a或b不能被N或M整除,那么是不行的所以要co