Codeforces Round #748 Red-Black Number 题解 (Java/C++)
题解 一个很明显的dp问题。 不难想到有这样几个状态:1、 前i个数字;2、|r-l|;3、除以A的余数;4、除以B的余数。于是我们就有这样的dp定义:dp[i][diff][x][y]表示前i个数,红色比黑色多diff个(不取绝对值),除以A余x,除以B余y时是否可能。…
题解 一个很明显的dp问题。 不难想到有这样几个状态:1、 前i个数字;2、|r-l|;3、除以A的余数;4、除以B的余数。于是我们就有这样的dp定义:dp[i][diff][x][y]表示前i个数,红色比黑色多diff个(不取绝对值),除以A余x,除以B余y时是否可能。…
A. Computer Game 题解 从左往右依次扫描即可。只要左边一列中有一个可以被访问,则当前列的所有安全的cell都可以被访问。 代码 Java C++…
A. Consecutive Sum Riddle 题解 显然$\frac {(l+r)\cdot (r-l+1)} 2 = n$,于是有$(l+r)\cdot (r-l+1) = 2\cdot n$。…
A. Gamer Hemose 题解 显然我们只需要选择攻击力最大的两个武器交替攻击即可。 代码 Java C++…
题解 首先,如果每个部分的XOR都相同(设为X),那么所有节点的XOR要么是X要么是0。 我们先考虑所有节点的XOR是0的情况。这种情况显然是YES,因为我们只需要选择任意一个叶子节点,然后让这个叶子节点独立成一个部分即可。…
题解 首先,因为gcd(a,b,c)一定小于等于gcd(a,b)或者gcd(b,c)的。因此,这个最大距离必然就是最大的那一条边。…
A. CQXYM Count Permutations 题解 不难想到,一个排列的满足条件的i有x个,那么如果我们把这个排列倒过来排列则其满足条件的i有2n-x个。比如[3,2,1,4]=1,那么[4,1,2,3]=4-1=3。…
题解 首先,我们几乎可以立刻注意到如果x[i]>m,那么这个一定没有任何影响,我们可以直接忽略他。于是x[i]的取值范围就从原先的0~$10^9$降低为了0~$2\cdot 10^5$。…