本题可采用函数写法,精简代码,降低代码重复率。

#include <iostream>
#include <cmath>
using namespace std;
void simulate(string &s,int k){
    int a=0,b=0;
    for(int i=0;i<s.size();i++){
        if(s[i]=='W') a+=1;
        else b+=1;
        if(!((a<k && b<k)||abs(a-b)<2)){
            cout<<a<<':'<<b<<endl;
            a=b=0;
        }
    }
    cout<<a<<':'<<b<<endl;                       //比赛未结束时也需输出比分,若为0:0,也输出
}

int main(){
    string s;
    int a=0,b=0;
    cin>>s;
    simulate(s,11);
    cout<<endl;
    simulate(s,21);
    return 0;
}