题目链接
注意的点:
在其中一个人分数大于等于11或21时,
分差要大于等于2。
题目要求按行输入, string类型的 string s; cin>>s;
(这种不行)
这种可以
第一种:借鉴的 (略有修改)
while (1)
{
cin>>s[nu];
if(s[nu]=='E') break;
nu++;
}
第二种:大佬的 while(cin>>s && s != 'E')//输入,碰到E就停止
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
char s[1000001];
int nu=0;
while (1)
{
cin>>s[nu];
if(s[nu]=='E') break;
nu++; //同时用来计数
}
int m=0,u=0;
for(int i=0;i<=nu;i++)
{
if((m>=11||u>=11)&& abs(m-u)>=2) {
cout<<m<<":"<<u<<endl;
m=0;
u=0;
}
if(s[i]=='W') m++;
else if(s[i]=='L') u++;
else
{cout<<m<<':'<<u<<endl;
break;}
}
cout<<endl;
m=0;
u=0;
for(int i=0;i<=nu;i++)
{
if((m>=21||u>=21)&& abs(m-u)>=2) {
cout<<m<<":"<<u<<endl;
m=0;
u=0;
}
if(s[i]=='W') m++;
else if(s[i]=='L') u++;
else
{ cout<<m<<':'<<u<<endl;
break;
}
}
return 0;
}