#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
char ch[2501][26] = { 0 };
int main()
{
int i = 0, r = 0;
int sum1 = 0, sum2 = 0;
int* a = (int*)malloc(25 * sizeof(int));
while (1)
{
for (r = 0; r < 25; r++)
{
scanf("%c",&ch[i][r]);
if (ch[i][r] == 'E'||ch[i][r]=='\n')
{
a[i] = r;
break;
}
else;
}
if (ch[i][r] == 'E')
{
break;
}
else;
i++;
}
a[i] = r;
int d = i + 1;
for (i = 0; i < d; i++)
{
for (r = 0; r < a[i]; r++)
{
if (ch[i][r] == 'W')
{
sum1++;
}
else if (ch[i][r] == 'L')
{
sum2++;
}
else if (ch[i][r] == 'E')
{
break;
}
else;
if ((sum1>=11||sum2>=11) && fabs(sum1 - sum2) >= 2)
{
printf("%d:%d\n", sum1, sum2);
sum1 = 0;
sum2 = 0;
}
else;
}
if (ch[i][r] == 'E')
{
break;
}
else;
}
printf("%d:%d\n\n", sum1, sum2);
sum1 = 0, sum2 = 0;
for (i = 0; i < d; i++)
{
for (r = 0; r < a[i]; r++)
{
if (ch[i][r] == 'W')
{
sum1++;
}
else if (ch[i][r] == 'L')
{
sum2++;
}
else if (ch[i][r] == 'E')
{
break;
}
else;
if ((sum1>=21||sum2>=21) && fabs(sum1 - sum2) >= 2)
{
printf("%d:%d\n", sum1, sum2);
sum1 = 0;
sum2 = 0;
}
else;
}
if (ch[i][r] == 'E')
{
break;
}
else;
}
printf("%d:%d", sum1, sum2);
return 0;
}
第二个测试点错误原因:第一行第四列读取了7,应为3; 本地与在线IDE第一行结果为11:3