Files
python/TangDou/LuoGuBook/第8章模拟与高精度/P1042.cpp
HuangHai 1f397eca87 'commit'
2025-08-30 18:35:01 +08:00

48 lines
1.1 KiB
C++

#include <bits/stdc++.h>
using namespace std;
const int N = 25 * 2500 + 10; //每行至多 25 个字母,最多有 2500 行。
int a[N];//小华的输赢状态表
int idx;
int main() {
char op;
while (true) {
cin >> op;
if (op == 'E') break;
if (op == 'W')
a[idx++] = 1;
else if (op == 'L')
a[idx++] = 0;
}
//开始分析11分
int w = 0, l = 0;
for (int i = 0; i < idx; i++) {
if (a[i])w++; else l++;
if ((w >= 11 || l >= 11) && abs(w - l) >= 2) {
printf("%d:%d\n", w, l);
//下一局开始,清零
w = l = 0;
}
}
//存在未打完的没分出胜负的
printf("%d:%d\n", w, l);
//两种计分制中间需要有空行
puts("");
//开始分析21分
w = 0, l = 0;
for (int i = 0; i < idx; i++) {
if (a[i])w++; else l++;
if ((w >= 21 || l >= 21) && abs(w - l) >= 2) {
printf("%d:%d\n", w, l);
//下一局开始,清零
w = l = 0;
}
}
printf("%d:%d\n", w, l);
return 0;
}