习题3-1 得分(Score, ACM/ICPC Seoul 2005, UVa1585)
给出一个由O和X组成的串(长度为1~80),统计得分。每个O的得分为目前连续出现
给出一个由O和X组成的串(长度为1~80),统计得分。每个O的得分为目前连续出现
的O的个数,X的得分为0。例如,OOXXOXXOOO的得分为1+2+0+0+1+0+0+1+2+3。
Sample Input
5
OOXXOXXOOO
OOXXOOXXOO
OXOXOXOXOXOXOX
OOOOOOOOOO
OOOOXOOOOXOOOOX
Sample Output
10
9
7
55
30
#include<iostream>
#include<cstring>
using namespace std;
int main() {
int n;
cin >> n;
while(n--) {
string s;
int count = 0;
int plus = 0;
cin >> s;
for(int i = 0; i < s.length(); i++) {
if(s[i] == 'X') {
plus = 0;
}
else if(s[i] == 'O') {
plus++;
count += plus;
}
}
cout << count << endl;
}
return 0;
}