E
#include<stdio.h>
#include<string.h>
int main()
{
char str[100000];
scanf("%s",&str);//fgets(str,sizeof(str),stdin);〤
int n=strlen(str),sum1=0,sum2=0,sum12=0,sum22=0,sign=0;
for(int i=0;i<n;i++)
{
switch(str[i])
{
case 'a':sum1++;break;
case 'b':sum2++;break;
default:printf("Bad\n");sign=1;break;return 0;//结束程序
}
if(sign==1)
break;
}
if(sum1!=sum2)
{printf("Bad\n");return 0;}
else
{
for(int j=0;j<n;j++)
{
switch(str[j])
{
case 'a':sum12++;break;
case 'b':sum22++;break;
}
if(sum12<sum22)
{printf("Bad\n");return 0;}
}
}
printf("Good\n");
return 0;
}
◮:a!=b ,pass
其他字符/空格,pass
每一个 every 前缀中a<b ,pass ∵a在b的前面,b多了前面没有a给它配
◮:break;在printf("Bad"); 之前,sign状态标记变量好像没用
fgets会将输入的\n 也读入导致n +1
浙公网安备 33010602011771号