codeforces 461div.2
A |
standard input/output
1 s, 256 MB |
||
B |
standard input/output
1 s, 256 MB |
||
C |
standard input/output
1 s, 256 MB |
||
D |
standard input/output
1 s, 256 MB |
||
E |
standard input/output
1 s, 256 MB |
||
F |
standard input/output
1 s, 256 MB |
----------
922A
题意:
给一个原型,每次可以选择克隆原型或者克隆拷贝,克隆原型可以获得一个新的原型和一个拷贝,克隆拷贝可以获得2个拷贝
给你目标的拷贝数量a和原型数量 b问能否达到
分析:
如果 b==1而a!=0 No
b==0而a!=1 No
b-a+1<0 No
b-a+1是奇数 No
其他所有 Yes
----------
922B
题意:
定义一种三角形,满足两边之和大于第三遍,三边为整数且三边异或为0,求三边小于n的三角形中,满足性质的三角形有多少个
经过旋转可以重合的三角形不重复计算
分析:
由于三边异或为零,实际上由异或的性质可知,第三个边的长度必定和两个边异或结果相等
遍历a,b,判断a^b是否合法即可
---------
922C
题意:
给n,k,问是否1-k所有数字对n取余的结果是不同的
分析:
简单尝试发现,满足要求的k很少,直接暴力,基本上所有的k都不会大于2000次循环
暴力测试即可,用map做vis访问标记,遇见相同的直接跳出
--------
922D
题意:
给定多个字符串,只包含s,h两个字符,求最大的排列顺序,使得最终的串中,"sh"子串最多
题目保证.,字符串长度总和小于1e5
分析:
贪心
对于任意两个字符串,只需要考虑两个字符串前后顺序即可,字符串自身内部的匹配不影响结果
根据乘法原理,对于2个串a,b a的s数*b的h数就是{ab},除去自身内部外的匹配数量
只需要比{ab}和{ba}就可以获得最优排列
预处理所有子串的s,h数,定义个结构体或者哈希和一个比较函数,sort一下即可
最终获得答案的时候,维护s的前缀和和答案,如果是s就增加前缀和,否则答案加上前缀和
-------
不发代码了,都很短....