codeforces round #616 题解

A – Even But Not Even

构造这种串的方法:
1.把末尾所有偶数删去
2.统计剩下的奇数个数,如果有奇数个奇数,则任意删去一个。注意如果第二位是0,不可以删去第一个数字,因为要避免前导零。

B – Array Sharpening

先从左到右试图把数组变成0,1,2,3…… 直到不能这么做
再从右到左试图把数组变成……4,3,2,1,0,直到不能这么做
如果能交在一起,答案就是Yes,否则是No

C – Mind Control

自己是第m个拿的,所以自己能拿的数是一个定长的区间。
可以支配k个人,但是只有支配自己前面的人是有意义的,意义在于可以移动自己能拿到的数字的这个区间。
每次枚举支配i个人到右边,k-i个人到左边,那么其实还有m-k个人无法支配
讨论无法支配的人怎么拿的每一种情况,取这些情况中的最小值作为当前i的答案。最后取每个i的答案的最大值。

D – Irreducible Anagrams

结论题
1.如果l==r,Yes
2.如果s[l]!=s[r],Yes
3.如果s[l]==s[r],且中间有>=3种字母,Yes
4.剩下的都是no
统计字母数量的时候,使用前缀和

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注