题意:给出一个由O和X组成的串,统计得分,每个O的得分为目前连续出现的O的个数.
例如;OOXXOXXOOO的得分为:1+2+0+0+1+0+0+1+2+3
ac代码:
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<queue>
#include<stack>
#include<map>
#include<iomanip>
#define ll long long
using namespace std;
const int maxn = 1e5+7;
int main(){
string s;
int t;
scanf("%d",&t);
while(t--){
cin>>s;
int l = s.length(), sum = 0, c = 0;
for(int i = 0; i < l; i++){
if(s[i] == 'O') {
c++;
sum+=c;
} else {
c = 0;
}
}
printf("%d\n",sum);
}
return 0;
}