codeforces
codeforces上的部分题目
jcg_814
这个作者很懒,什么都没留下…
展开
-
codeforce #658 B. Sequential Nim
题意:两个人,n个石堆,每次只能按顺序从一个石堆取若干个石头,谁先没石头拿,谁输。每个人都是最优拿法。 思路:谁先拿到石头数大于1的石堆,谁赢。六种情况:1、所有石堆的石块数全为一,奇数个石堆1赢,偶数个石堆2赢。2、前面有x个数量为1的石堆,x%21,2赢;x%20,1赢。3、其他情况均为1赢。 代码: #include <bits/stdc++.h> using namespace std; int t,n,a[100010],f; int main() { cin>>t; ..原创 2020-07-22 22:42:50 · 211 阅读 · 0 评论 -
codeforce #658 A. Common Subsequence
题意:找两个数组的最短子序列。 思路:要么没有,要么长度为一。只要判断两个数组有没有相同的元素即可。 代码: #include <bits/stdc++.h> using namespace std; int t,n,m,a[1010],b[1010],c[1010],f; int main() { cin>>t; while(t--) { cin>>n>>m; for(int i=1;i<=1..原创 2020-07-22 22:27:41 · 191 阅读 · 0 评论 -
Codeforces Round #642 (Div. 3)C. Board Moves
原题:https://codeforces.com/contest/1353/problem/C 题意:t组案例,n为奇数,n*n格矩阵中,其他所有位置都要往中心点移动(可沿对角线移动),求总的移动次数。 思路:如图所示,可将目标分解成8块等价的区域,即一块白色区域加一条黄色线。循环以对角线1 9 17为标准,第二次循环为2 10,这样可以用等差数列求和公式计算移动次数(首相为1,项数为(n-1)/2-i+1). #include <bits/stdc++.h> using namespac原创 2020-05-17 23:24:01 · 147 阅读 · 0 评论 -
Codeforces Round #642 (Div. 3) B. Two Arrays And Swaps
原题:https://codeforces.com/contest/1353/problem/B 题意:t组案例,n为数组a,b大小,k为可交换次数,求经过k次交换后,数组a的和值的最大值 思路:sort排序,a升序,b降序,从头开始比较k次,a比b大就交换,在求和。 #include <bits/stdc++.h> using namespace std; int t,n,k,a[40],b[40],sum; bool cmp(int a,int b) { return a>b原创 2020-05-17 23:08:37 · 160 阅读 · 0 评论 -
Codeforces Round #642 (Div. 3) A. Most Unstable Array
原题:https://codeforces.com/contest/1353/problem/A 题意:t组案例,n和m两个整数,将m分解成n个数,可为零,使得相邻两数差的绝对值之和最大并求最大值。 思路:n=1,输出0 n=2,输出m-0 n>2,数组可以分为:0 0 0…0 0 m 0 0 …0 0 0结果为2*m 故代码为: #include <bits/stdc++.h> using namespace std; int t,n,m; int main() { cin>&g原创 2020-05-17 23:00:44 · 123 阅读 · 0 评论 -
Codeforces Round #640 (Div. 4) C. K-th Not Divisible by n
原题:https://codeforces.com/contest/1352/problem/C 题意:从1开始,找到第k个不能被n整除的数 思路:一开始暴力,超时了(猜到了,但还是想试试),之后试着从循环的角度去想。 用3 7 举例19=7%(3-1)+7/(3-1)*3, 再把n=2和余数为零的情况分开来讨论就行了。 #include <bits/stdc++.h> using namespace std; int t,n,k,i,sum,x; int main() { cin>&原创 2020-05-10 23:35:44 · 162 阅读 · 0 评论 -
Codeforces Round #640 (Div. 4) A. Sum of Round Numbers
原题:https://codeforces.com/contest/1352/problem/A 题意:t组数,将每个数分解成首位不为零而后面全为零的k个数,先输出k再输出k个数 思路:一开始把n当做整数来考虑,分解的时候想着从10开始向上依次分解,到余数为零的时候跳出(for循环的话不清楚n的长度)。 memset(a,0,sizeof(a)); cin>>x; sum=1; i=10; while(x%i!=0){ a[sum]=x%i;原创 2020-05-10 23:24:35 · 182 阅读 · 0 评论 -
Codeforces Round #636 (Div. 3) A. Candies
转载:原题:https://codeforces.com/contest/1343/problem/A 题解:https://codeforces.com/blog/entry/76352 Recently Vova found n candy wrappers. He remembers that he bought x candies during the first day, 2x cand...原创 2020-04-22 12:05:21 · 267 阅读 · 0 评论 -
Codeforces Round #636 (Div. 3) B. Balanced Array
原题:https://codeforces.com/contest/1343/problem/B 官方题解:https://codeforces.com/blog/entry/76352 题意:t组测试样例,输入n,表示一共输出n个数,前n/2个为偶数,后n/2个为奇数,要求奇数之和与偶数之和相等。 首先n必须是4的倍数,不然奇数之和必为奇数,直接输出NO。测试样例中可以看出偶数组是常规的递加关...原创 2020-04-22 12:24:29 · 178 阅读 · 0 评论 -
Codeforces Round #636 (Div. 3) C. Alternating Subsequence
原题:https://codeforces.com/contest/1343/problem/C 官方题解:https://codeforces.com/blog/entry/76352 题意:t组测试样例,n个数,找长度最长且元素之和最大的交替子序列(第一要求是最长的交替子序列,然后才是元素之和最大) 一开始想到dp上去了(最近都在做这类题,感觉都快魔怔了),测试数据都是过了的,但是wal了...原创 2020-04-22 12:49:16 · 156 阅读 · 0 评论