规律
考你眼力和经验的东西
为什么他们cf写的这么快
这个作者很懒,什么都没留下…
展开
-
Codeforces Round #628 (Div. 2) D. Ehab the Xorcist(规律+结论)
题目链接 思路:硬是根据样例来猜结论。。。 首先u+t+t=v,这个肯定是一组答案,因为t^t=0,那么就来考虑一下能不能把长度给缩小,把u+t和t给判断一下就行。至于什么情况下无解呢?就是u>v或者u和v奇偶性不同的时候。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int ...原创 2020-03-15 19:57:07 · 112 阅读 · 0 评论 -
Dasha Code Championship - SPb Finals Round B. Marcin and Training Camp(思维+规律)
题目链接 题意:给定n个数,如果n个数里只有一个数的某个二进制是1,那么他就很高傲,否则就很平静,每个数有代价bi,问你要找到至少2个人平静在一起的最大代价。 思路:比较难想的就是怎么的人可以平静的坐一起,我们发现要想坐一起的话,这个集合肯定是有重复的,那么单单重复元素就可以了吗?其实还可以在重复的集合中加入这个数的子集(比如一个数的二进制是11000,那么1000就是11000的子集)。 #...原创 2020-02-26 20:23:53 · 173 阅读 · 0 评论 -
Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) (异或+规律)
题目链接 题意:要你用0到n^2-1的数构造一个nn的矩阵,同时矩阵的每一行每一列的异或值要相同。 思路: 我们发现对于·n为4的时候存在这样满足条件的矩阵: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 又由于n的4的倍数,那么我们就按44这样的大小一个个构造。 那么如果没发现这个规律呢?没发现的话一切都是扯蛋。。。 #include <bits/stdc+...原创 2020-02-26 20:53:54 · 112 阅读 · 0 评论 -
Dasha Code Championship - Novosibirsk Finals Round E. Middle-Out(暴力+思维+规律)
题目链接 题意:给出字符串s和t,每次你可以把s中的任意字符拿到首或尾,问你要把s变成t,最小的移动次数。 思路:我们发现只要s存在一个子序列和t中某一段连续字串相同,假设子序列长度为x,那么移动次数一定为n-x,那么题目就是变成了求s和t中最长的子序列,由于n很小,暴力即可。关键就是要考虑那些不动。 #include<bits/stdc++.h> using namespace ...原创 2020-02-18 20:21:24 · 201 阅读 · 0 评论 -
Educational Codeforces Round 74 (Rated for Div. 2) D. AB-string(思维+规律)
题目链接 思路:由于给出的字母只要a和b,所有其实比较容易观察,一眼看回文数量不好求,我们可以转个变,求出不是回文的数量,然后总数减去它就是答案,那么怎么求不是回文的字串数量呢?打个表可以观察一下,一般包含,ABBB,BBBA,BAAA,AAAB的都不是回文串,每次遇到A的时候往前和往后扫相同的B字符数,遇到B的时候也是同理。不过这里有个思维漏洞需要注意一下,就是出现ABAB的时候会减重复了,...原创 2020-02-21 20:55:48 · 157 阅读 · 0 评论 -
Codeforces Round #616 (Div. 2) D - Irreducible Anagrams(规律)
题意:我们定义两个字符串s和t,如果s和t存在一个前缀,他们的所有的字母数都是相同的,我们称这两个字符串相似。现在给你初始字符串s,q个询问,每次询问给出l和r,问你能不能找出一个字符串与字串Sl…Sr不相似。 思路:其实一开始也想到了应该存在一些规律,l==r是肯定是Yes,s[l]和s[r]不相同时也肯定是Yes,只是当s[l]和s[r]相同时我就有点蒙了,其实当s[l]==s[r]时只能...原创 2020-02-04 12:13:47 · 172 阅读 · 0 评论 -
Educational Codeforces Round 82 (Rated for Div. 2) D. Fill The Bag(位运算+规律)
题目链接 思路:这里比较难想的就是对于第i位有多少个数的和可以分配给他,比如我们枚举位的时候枚举到了4,那后面1和2的数量满足什么关系时才可以替代4呢?其实每次枚举位的时候记录一个前缀和sum,每次sum除以2就是我们可以给当前位分配的数量,当数量不够的时候就向前面第一个数量不为0的位来借,其实知道了sum后,这题就容易多了。 #include<bits/stdc++.h> usin...原创 2020-02-13 21:32:29 · 138 阅读 · 0 评论 -
codeforces Educational Codeforces Round 78 (Rated for Div. 2) B - A and B(思维,规律)
题意:输入a和b,执行第一次操作可以使a和b任意选择一个1个加一,执行第二次操作可以使a和b任意选择一个1一个加2,以此类推,问要使a和b相等的最小操作次数。 思路:假设a和b最后都变成x,则x-a+x-b的差满足1+2+3+。。。n中的一个前缀和就行,暴力枚举操作次数即可。 #include<bits/stdc++.h> using namespace std; const int...原创 2020-01-14 20:37:47 · 363 阅读 · 0 评论 -
codeforces Educational Codeforces Round 80 (Rated for Div. 2) B - Yet Another Meme Problem(规律)
题意:找出满足conc(a,b)的a,b关系对数量; 思路:规律题,发现只要b是9,99,999等等的都满足条件 #include<bits/stdc++.h> using namespace std; typedef long long ll; int main() { int T; ll a,b,cnt; scanf("%d",&T); while(T--) {...原创 2020-01-16 19:14:38 · 174 阅读 · 0 评论 -
牛客挑战赛36 B 字符串(规律)
题目链接 思路:我们考虑一下什么时候答案是No,推算一下很容易发现,如果构造出来的字符串能够均分的话肯定不行。 假设一:如果m<n:0%n=0,(0+m)%n=m,那么如果n-m如果能被n整除的话答案是不是就是No?,我们推理出K*(n-m)+b=n,b就是最后多出来的那一块,b如何求?那个式子是不是很容易想到gcd?其实就是gcd(n,m)=b,那么如果m+b>=n答案就是No。...原创 2020-01-18 16:28:20 · 150 阅读 · 0 评论 -
Codeforces Round #569 (Div. 2) C - Valeriy and Deque(规律)
题意:给定一个初始序列,每次执行一个操作,把序列的最前面的两个数进行比较,把大的放在序列最前面,小的放到最后,给出q个询问,问第m次操作的序列的最前面的两个数是多少? 思路:可以先设初始序列最大值一开始出现的位置为k,一但到了k进行比较的时候永远都是这个最大值放前面,其他的放后面,其实就是个循环,模拟一遍就可以了。 #include<bits/stdc++.h> using nam...原创 2020-01-21 16:28:04 · 119 阅读 · 0 评论 -
Codeforces Round #604 (Div. 2) B - Beautiful Numbers(规律)
题意:美丽数的定义如下,对于一个数i,如果能找到一个区间【l,r】满足区间内的数的范围是[1,i](顺序无所谓)(也就是将区间排序后是序列为[1,i]),满足该条件的数为美丽数,给定初始序列,问哪些数是美丽数。 思路:其实这个题如果不是放在B题的话我感觉我会往很复杂的方向去想,其实这个也是有规律的,对于一个数i如果是美丽数的话,那也【1,i-1】这些数的下标与i的下标构成的一定是个公差为1的等差...原创 2020-01-28 21:28:54 · 243 阅读 · 1 评论