社区讨论

RE,0pts,求调

P11965[GESP202503 七级] 等价消除参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@mm6dsliv
此快照首次捕获于
2026/02/28 21:53
上周
此快照最后确认于
2026/03/03 11:35
上周
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
int sum[30][200005];
int bin[200005];
long long cnt[1000005];
int main(){
    int n;cin>>n;
    string str;
    cin>>str;
    str=" "+str;
    for(int i=1;i<=n;i++){
        for(int j=0;j<26;j++){
            if(str[i]==j+'a'){
            	sum[i][j]=sum[i-1][j]^1;
			}
            else{
            	sum[i][j]=sum[i-1][j];
			}
        }
        for(int j=0;j<26;j++){
            bin[i]|=(sum[i][j]<<j);
        }
    }
    cnt[0]=1;
    long long ans=0;
    for(int i=1;i<=n;i++){
        ans+=cnt[bin[i]];
        cnt[bin[i]]++;
    }
    cout<<ans<<endl;
}

回复

1 条回复,欢迎继续交流。

正在加载回复...