思路
第一题对k取余数,用map存一下,哪个数多就选哪个
第二题进行两次操作,第一次将所有数变成1第二次为0,以第一种为例,从第二个开始,判断前一个数是否为0,是0就将这一位和上一位取反,然后判断最后一位是否为1
第三题bfs,或者dp,记忆化搜索都可以,如果与上一个点相同则+1否则+2
第四题dp,至少2个,我们可以求出0个和1个,然后用26^n减掉0个和1个的个数,具体可以用2维,表示前i个数中red的个数,属性求个数f[i][0]= f[i-1][0]*26 -f[i-3][0],f[i][1]=f[i-1][1]*26+f[i-3][0]- f[i-3][1]只看向前3位即可,记得初始化 f[0][0] = 1, f[1][0] = 26, f[2][0] = 26 * 26.