P1042 乒乓球
严格按照题目要求去做即可(最好自己在本子上画个流程图)
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> pii;
const int N=2505;
pii eleven={0,0},twenty_one={0,0};
string nums[N]={""};
int length=0;
int main() {
vector<pii>ele,twenty;
// ofstream out("1.txt",ios::app);
// if (out.fail())
// cout<<"error\n"<<endl;
// out.clear();
while (1){
string str;
cin>>str;
length=str.length();
for (int i = 0; i < length ; ++i) {
if (str[i]=='E'){
// out<<eleven.first<<":"<<eleven.second<<endl;
ele.push_back(eleven),eleven=pii(0,0);
// out<<twenty_one.first<<":"<<twenty_one.second<<endl;
twenty.push_back(twenty_one),twenty_one=pii(0,0);
goto setup1;
}
else if (str[i]=='W')
eleven.first++,twenty_one.first++;
else
eleven.second++,twenty_one.second++;
if (eleven.first>=11||eleven.second>=11){
if (abs(eleven.first-eleven.second)>=2){
//out<<eleven.first<<":"<<eleven.second<<endl;
ele.push_back(eleven),eleven=pii(0,0);
}
}
if (twenty_one.first>=21||twenty_one.second>=21){
if (abs(twenty_one.first-twenty_one.second)>=2){
// out<<twenty_one.first<<":"<<twenty_one.second<<endl;
twenty.push_back(twenty_one),twenty_one=pii(0,0);
}
}
}
}
setup1:
for (auto i = ele.begin(); i !=ele.end() ; ++i) {
cout<<i->first<<":"<<i->second<<endl;
}
cout<<endl;
for (auto i = twenty.begin(); i !=twenty.end() ; ++i) {
cout<<i->first<<":"<<i->second<<endl;
}
// out.close();
return 0;
}```