为什么左移右移的时候要 平方 啊。(教练给的AC代码如下)
void del(int x) { cnt-=sum[a[x]]*sum[a[x]]; sum[a[x]]--; cnt+=sum[a[x]]*sum[a[x]]; } void add(int x) { cnt-=sum[a[x]]*sum[a[x]]; sum[a[x]]++; cnt+=sum[a[x]]*sum[a[x]]; }