当前位置: 代码迷 >> 综合 >> HDU:1073nbsp;nbsp;nbsp;Onlinenbsp;Judge
  详细解决方案

HDU:1073nbsp;nbsp;nbsp;Onlinenbsp;Judge

热度:35   发布时间:2024-01-04 11:09:21.0

计算一下tab和backspace 和enter三种键的个数,其余的存起来比较是否一样,这样就行了

要注意的是tab和backspace 和enter三种键要分别计算个数。

代码:

#include<stdio.h>
#include<string.h>
int main()
{
 int n,i,j,num1,num2,tabnum1,tabnum2,ennum1,ennum2;
 char str[5001],str1[5001],str2[5001];
 scanf("%d",&n);getchar();
 while(n--)
 {
  gets(str);num1=ennum1=tabnum1=0;j=0;
  while(gets(str),strcmp(str,"END")!=0)
  {
   ennum1++;
   for(i=0;str[i];i++)
    if(str[i]==' ')
     num1++;
    else if(str[i]==' ')
     tabnum1++;
    else str1[j++]=str[i];
  }
  str1[j]=0;
  gets(str);num2=ennum2=tabnum2=0;j=0;
  while(gets(str),strcmp(str,"END")!=0)
  {
   ennum2++;
   for(i=0;str[i];i++)
    if(str[i]==' ')
     num2++;
    else if(str[i]==' ')
     tabnum2++;
    else str2[j++]=str[i];
  }
  str2[j]=0;
  if(strcmp(str1,str2)==0)
  {
   if(num1==num2&&ennum1==ennum2&&tabnum1==tabnum2)printf("Accepted\n");
   else printf("Presentation Error\n");
  }
  else printf("Wrong Answer\n");
 }
 return 0;
}

  相关解决方案