如果相邻两个颜色均相同则删除当前颜色
难度:中等
这题其实有点脑筋急转弯,Alice的操作并不会影响Bob能删除颜色的次数,反之亦然,那么我们只需要分别计算字符串中有多少个 相邻都为本身 的字符 A 和字符 B即可。
代码如下:
public boolean winnerOfGame(String colors) {
char[] chars = colors.toCharArray();
int cntA = 0;
int cntB = 0;
for (int i = 1; i < colors.length()-1; i++) {
if (chars[i]=='A' && chars[i-1]=='A'&& chars[i+1]=='A') cntA++;
if (chars[i]=='B' && chars[i-1]=='B'&& chars[i+1]=='B') cntB++;
}
return cntA>cntB;
}
执行结果:成功