随笔分类 -  codeforces系列

摘要:A:http://codeforces.com/contest/1364/problem/A 题意: n个数的序列,给出x 找出最长的子序列(删除首尾得到的序列),使得和不能被x整除。 解析: 如果总的sum%x!=0,直接输出n 整除段-不能整除段=不能整除段 找到离左端点最近的不能整除x的下标L 阅读全文
posted @ 2020-06-14 22:28 liyexin 阅读(148) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1366/problem/C 题意: n*m的01矩阵 把所有的从(1,1)到(n,m)路线变为回文,最少需要修改几处,操作:0<->1 解析: 可以得到结论,对于(x,y),从(1,1)到它的步数为:x+y-2 那么假设当前步数为k 阅读全文
posted @ 2020-06-12 20:12 liyexin 阅读(274) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1366/problem/B 题意:n,x,m n个位置,ax=1,其他初始均为0 m次输入l,r:可以在[l,r]找到两个下标c,d,交换它俩的值,c可以==d 求所有可能为1的坐标数。 解析: 刚开始看是有点绕的。。。 设初始L= 阅读全文
posted @ 2020-06-12 20:04 liyexin 阅读(186) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1366/problem/A 题意:给出a,b的数目 a b 1a+2b->得一个奖励 2a+1b->得一个奖励 求最大奖励数 解析: 规定:a<=b 肯定对大的来讲,尽量让它先-2。 那么如果得a个奖励,那么消耗2*a个b,如果b> 阅读全文
posted @ 2020-06-12 19:57 liyexin 阅读(214) 评论(0) 推荐(0)
摘要:A:http://codeforces.com/contest/1365/problem/A 题意: n*m的01矩阵,操作是把0变为1,条件是这个0所在的行列均无1。给出先手,求胜者。 解析: 改变一个0,那么它所在的行列均不能再使用。 设不含1的列有x,不含1的行有y,那么min(x,y)即为可 阅读全文
posted @ 2020-06-08 18:58 liyexin 阅读(143) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1362/problem/C 题意: 0~n的数按顺序排列,求二进制相邻差异数之和。 解析: 结论一: f(n)=f(n/2)+n 1:1 2:3 3:4 4:7 5:8 ...... 此结论可得出 递归来求f(n),可以说是很方便了 阅读全文
posted @ 2020-06-05 18:24 liyexin 阅读(178) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1362/problem/B 题意: 找出最小k,去^ a[]里的每个值,使得a[]不变(可变顺序) 解析: 异或^:同为0,异为1 数据很小,直接暴力即可 map来判定是否相同,每次^完毕以后,用map记录出现次数判定一遍即可。 # 阅读全文
posted @ 2020-06-05 18:18 liyexin 阅读(99) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1362/problem/A 题意: 给出a,b a的操作:*2,*4 , *8 /2 /4 /8 问达到目标b最少需要多少步,达不到输出-1 解析: 贪心,如果a*x==b,那么这个x/(操作值)==步数。 这个步数,肯定是操作值越 阅读全文
posted @ 2020-06-05 18:12 liyexin 阅读(162) 评论(0) 推荐(0)
摘要:A:http://codeforces.com/contest/1363/problem/A 题意: n个数,能否从中找到x个数,使得sum为奇数 解析: 比赛时被自己弄吐了,懒得一个一个分析,索性直接暴力枚举 这破代码。。。各位不要学我啊。。。 #include<cstdio> #include< 阅读全文
posted @ 2020-06-01 17:07 liyexin 阅读(148) 评论(0) 推荐(0)
摘要:A:http://codeforces.com/contest/1359/problem/A 题意: n张牌,m张王,k个人,每个人分得n/k张牌,得分为手中王牌数-其他人中所拥有的最大王牌数。存在多个,输出0分。 解析: a题依然是熟悉的分类讨论~先分第一个人,再分给其他人,分类讨论。关键是这个n 阅读全文
posted @ 2020-05-29 22:10 liyexin 阅读(162) 评论(0) 推荐(0)
摘要:A:https://codeforces.com/contest/1358/problem/A 题意: n*m格子,灯只能放在每条街中间位置,求最少的灯来点亮所有的格子。 解析: 做这种题有点小阴影。生怕错过哪个情况,所以总是写的很繁琐。 分类讨论即可 #include<iostream> #inc 阅读全文
posted @ 2020-05-27 17:52 liyexin 阅读(183) 评论(0) 推荐(0)
摘要:A:http://codeforces.com/contest/1360/problem/A 题意: 用最小正方形,容下两个相同矩形。 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> using na 阅读全文
posted @ 2020-05-26 20:13 liyexin 阅读(201) 评论(0) 推荐(0)
摘要:地址:https://codeforces.com/problemset/problem/1202/D 题意:给出n,构造含有n个子1337的字符串。 解析:本来想的是1.....1337的,但是看数据s=1e5,而n达到了1e9,显然不行。 对于n的贡献,3是最大的,而7又是消耗最少的。所以可以构 阅读全文
posted @ 2020-05-21 23:53 liyexin 阅读(171) 评论(0) 推荐(0)
摘要:B:http://codeforces.com/contest/1354/problem/B 题意: 找出同时含有1,2,3的最短序列的长度。 解析: 比赛代码被hack了,超时。赛后看了题解,才觉得自己真是太蠢了。 p[1],p[2],p[3]来记录最后出现对应数字的位置。当三者都出现时,更新最小 阅读全文
posted @ 2020-05-19 18:14 liyexin 阅读(262) 评论(0) 推荐(0)
摘要:A:http://codeforces.com/contest/1355/problem/A 题意: 每次加这个数每一位的最大和最小的乘积,求第K次的结果。 解析: 直接模拟即可,但是有一个TLE点,就是当最大或最小=0时,就需要终止了,因为再加下去值就不变了。 #include<iostream> 阅读全文
posted @ 2020-05-19 17:39 liyexin 阅读(139) 评论(0) 推荐(0)
摘要:A: http://codeforces.com/contest/1353/problem/A 题意:构造出一个长度为n的序列,sum=m。求出最大的相邻差值的绝对值之和。a[]>=0。 解析:由于最小为0,所以可以这么构造:0,x,0,x,0,x......x为sum的平均值。那么结果总的就是2* 阅读全文
posted @ 2020-05-15 17:04 liyexin 阅读(227) 评论(0) 推荐(0)
摘要:A: http://codeforces.com/contest/1350/problem/A 题意:f(n)+n,求第k次的结果。f(n)为n的最小公因数。 解析:模拟一下,就可以看出,这是一个d=2的等差数列,第一项是f(n)+n,求第k项。所以先把f(n)求出来。 #include<iostr 阅读全文
posted @ 2020-05-13 20:18 liyexin 阅读(171) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1352 题意:将给出的数拆成最少的d000,,,形式 解析:拆的话,太麻烦,直接用string即可 #include<iostream> #include<cstdio> #include<cstring> #include<map 阅读全文
posted @ 2020-05-11 17:27 liyexin 阅读(165) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1345 题意:按图中规则堆金字塔,给出n个材料,尽量往高的堆,问可以堆出多少个金字塔。 解析:可以推出每个金字塔所需材料数:2,2+5,2+5+8,2+5+8+11.......可以打表,然后二分找>=n的第一个位置,n减去它直到n 阅读全文
posted @ 2020-05-07 18:46 liyexin 阅读(201) 评论(0) 推荐(0)
摘要:地址:http://codeforces.com/contest/1348 题意:2^1,2^2....2^n,分成两部分,使两部分的差最小。 解析:可以发现,n越大,2^n越大,和前面的差距越来越大。所以第一部分先把2^n先加入,再陆续加入2^1,2^2.....直到n/2个即可。 #includ 阅读全文
posted @ 2020-05-03 20:13 liyexin 阅读(158) 评论(0) 推荐(0)