0%

ABC-411-D - Conflict 2

思路讲解

通过倒序遍历,就可以提前知道这个操作是否会影响最终的服务器端字符串。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
ROF(i,Q,1){
if(op[i]==1){
if(idx==pos[i]){
// 那么为什么将服务器字符串赋值给电脑端的操作需要重置字符串为0?
// 其实答案就藏在上面这个if条件中
idx=0;
}
}else if(op[i]==2){
if(idx==pos[i]){ // 那么当我们发现改变该字符串会改变最终状态
ans+=S[i];
}
}else{
// 比较好理解,就是说当发现sever发现其是来自于pos[i]的时候将idx设置为pos[i]
if(idx==0){
// 这个条件就是说如果pos[i]其会改变最终状态,前面这个pos[i]必须是白板
idx=pos[i];
}
}
}

AC代码

https://atcoder.jp/contests/abc411/submissions/66994292

心路历程(WA,TLE,MLE……)