代码如下:
#include<cstdio>
#define ischar(c) (c>='A'&&c<='Z')
void read(char &x){
x='0';char c=getchar();
if(!ischar(c)) c=getchar();
if(ischar(c)){
x=c;
return;
}
}
const int MAXN=25*2500+10;
int a[MAXN],cnt=0,l=0,r=0;
int main(){
char x;
while(true){
read(x);
if(x=='E') break;
if(x=='W') a[++cnt]=1;
else a[++cnt]=2;
}
for(int i=1;i<=cnt;++i){
if(a[i]==1) l++;
else r++;
if(((l>=11)||(r>=11))&&((l-r>=2)||(r-l>=2))){
printf("%d:%d\n",l,r);
l=0,r=0;
}
}
printf("%d:%d\n",l,r);
printf("\n");
l=0,r=0;
for(int i=1;i<=cnt;++i){
if(a[i]==1) l++;
else r++;
if((l>=21||r>=21)&&(l-r>=2||r-l>=2)){
printf("%d:%d\n",l,r);
l=0,r=0;
}
}
printf("%d:%d\n",l,r);
return 0;
}
对于这个数据:
WWLWWWWLWWWWLWWWWWWL
WWWWWLWWWWWLWWWWWLWWE
我在本地的结果是
11:3
11:2
11:2
0:0
21:4
12:3
这个结果应该是正确的,
但在洛谷的测评机中(在线IDE) 结果是:
11:3
11:3
11:2
0:0
21:5
12:3
请问各位dalao,这是什么情况??