这个题目不看例子,根本就不知道是个什么鬼啊。需要注意同一组数据中每次的字符替换都建立在上一次的基础上。
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
int n = in.nextInt();
int m = in.nextInt();
StringBuilder sb = new StringBuilder(in.next());
for (int i = 0; i < m; i++) {
int count = 0;
int x = in.nextInt();
char c = in.next().charAt(0);
sb.setCharAt(x-1, c);
StringBuilder cp = new StringBuilder(sb.toString());
int length = cp.length();
int j = 0;
while (j < length - 1) {
if (cp.charAt(j) == '.' && cp.charAt(j+1) == '.') {
cp.replace(j, j+2, ".");
count++;
length = cp.length();
} else {
j++;
}
}
System.out.println(count);
}
}
}
}