Codeforces Round #748 ABCDEFG 题解 (Java/C++)
A. Elections
题解
直接计算与另外两个人的票数的最大值的的差后再加一即可。
代码
Java
C++
B. Make it Divisible by 25
题解
能被25整除的数的特征是最后的两位只有4种可能:00,25,50,75。于是我们从后往前找这四种可能即可。
代码
Java
C++
C. Save More Mice
题解
因为猫到达洞口的时间是一定的,所以我们只需要在有限的时间内救出尽可能多的老鼠即可。而要救出一只老鼠需要花费的时间和一开始这只老鼠和洞口的距离直接相关。
因此,我们直接按照与洞口的距离排序,从距离短的依次救就可以了。
代码
Java
C++
D. All are Same/Half of Same
D1的做法不难想到。而D2对比D1,关键是想到可以通过暴力求出所有因数这一点。
E. Gardener and Tree
题解
拓扑排序,只是需要用两个队列来计算次数。
代码
Java
C++
F. Red-Black Number
很明显的一个DP问题,关键是找出这个问题中的4个关键状态:前i个数、红色与黑色的数目的差、除以A和除以B的余数。
G. Changing Brackets
这个题目的关键是发现括号下标的奇偶性对结果的影响。