蒟蒻不会用LaTeX,敬请原谅~~
您中间的
before=1;
for(int i=1;i<=m;i++){
now=p[i];
if(before>now)
swap(before,now);
qianzhui[before]++;
qianzhui[now]--;
before=p[i];
}
没必要这么用啊。
你既然存了$p[i]$,那就可以直接用$p[i]$去求差分了啊~~
for(int i=2;i<=m;i++){
sum[min(p[i],p[i-1])]++;
sum[max(p[i],p[i-1])]--;
}
当然还有就是这里面有$p[i-1]$,所以$i$就是从2开始了qwq
by tanghairong @ 2021-07-18 16:48:34
@[return_input](/user/261262)
by tanghairong @ 2021-07-18 16:53:41
@[Hale2008](/user/136939) 已经过了,非常感谢
by WaltVBAlston @ 2021-07-18 19:36:32