HDU 1073

16592 ワード

http://acm.hdu.edu.cn/showproblem.php?pid=1073
シミュレーションoj判題
勝手にやって、文字列の読み込みの細部を処理していないで、waは長い間

#include <iostream>

#include <cstdio>

#include <cstring>

#include <map>

using namespace std ; 

char s1[100005],s2[100005] ;

char s3[100005],s4[100005] ;

int main()

{

    int t ;

    scanf("%d%*c",&t) ;

    while(t--)

    {

        scanf("%*s%*c") ;

        char ch ;

        int st=0 ;

        while(ch=getchar())

        {

            s1[st++]=ch ;

            if(ch=='
' && st>3 && s1[st-4]=='E' && s1[st-3]=='N' && s1[st-2]=='D') break ; } s1[st-5]='\0' ; scanf("%*s%*c") ; st=0 ; while(ch=getchar()) { s2[st++]=ch ; if(ch=='
' && st>3 && s2[st-4]=='E' && s2[st-3]=='N' && s2[st-2]=='D') break ; } s2[st-5]='\0' ; if(!strcmp(s1,s2)) { puts("Accepted") ; } else { st=0 ; for(int i=0 ;i<strlen(s1) ;i++) if(s1[i]==' ' || s1[i]=='\t' || s1[i]=='
') continue ; else s3[st++]=s1[i] ; s3[st]='\0' ; st=0 ; for(int i=0 ;i<strlen(s2) ;i++) if(s2[i]==' ' || s2[i]=='\t' || s2[i]=='
') continue ; else s4[st++]=s2[i] ; s4[st]='\0' ; if(!strcmp(s3,s4)) puts("Presentation Error") ; else puts("Wrong Answer") ; } } return 0 ; }

View Code

#include <iostream>

#include <cstdio>

#include <cstring>

#include <map>

using namespace std ; 

char s1[100005],s2[100005] ;

int main()

{

    int t ;

    scanf("%d%*c",&t) ;

    while(t--)

    {

        scanf("%*s%*c") ;

        char ch ;

        int st=0 ;

        while(ch=getchar())

        {

            s1[st++]=ch ;

            if(ch=='
' && st>3 && s1[st-4]=='E' && s1[st-3]=='N' && s1[st-2]=='D') break ; } s1[st-5]='\0' ; scanf("%*s%*c") ; st=0 ; while(ch=getchar()) { s2[st++]=ch ; if(ch=='
' && st>3 && s2[st-4]=='E' && s2[st-3]=='N' && s2[st-2]=='D') break ; } s2[st-5]='\0' ; if(!strcmp(s1,s2)) { puts("Accepted") ; } else { map <char,int> M1,M2 ; for(int i=0 ;i<strlen(s1) ;i++) M1[s1[i]]++ ; for(int i=0 ;i<strlen(s2) ;i++) M2[s2[i]]++ ; map <char,int> :: iterator it ; int f=1 ; for(it=M1.begin() ;it!=M1.end() ;it++) if(M2[it->first]!=it->second && it->first!=' ' && it->first!='\t' && it->first!='
') { f=0 ; break ; } if(f) puts("Presentation Error") ; else puts("Wrong Answer") ; } } return 0 ; }

View Code