题解
2025-08-29 17:24:45
发布于:浙江
8阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
string s;
cin>>n>>s;
long long ans=0;
int*lc=new int[n];
int*rw=new int[n];
lc[0]=(s[0]=='C')?1:0;
for(int i=1;i<n;i++) {
lc[i]=lc[i-1]+(s[i]=='C'?1:0);
}
rw[n-1]=(s[n-1]=='W')?1:0;
for(int i=n-2;i>=0;i--){
rw[i]=rw[i+1]+(s[i]=='W'?1:0);
}
for(int i=0;i<n;i++) {
if(s[i]=='O'){
ans+=(long long)lc[i]*rw[i];
}
}
cout<<ans<<endl;
delete[] lc;
delete[] rw;
return 0;
}
这里空空如也
有帮助,赞一个