HDU 3788 和九度OJ 1006測試資料不一樣,hduoj

來源:互聯網
上載者:User

HDU 3788 和九度OJ 1006測試資料不一樣,hduoj
ZOJ問題Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2935    Accepted Submission(s): 889


Problem Description對給定的字串(只包含'z','o','j'三種字元),判斷他是否能AC。

是否AC的規則如下:
1. zoj能AC;
2. 若字串形式為xzojx,則也能AC,其中x可以是N個'o' 或者為空白;
3. 若azbjc 能AC,則azbojac也能AC,其中a,b,c為N個'o'或者為空白; 
Input輸入包含多組測試案例,每行有一個只包含'z','o','j'三種字元的字串,字串長度小於等於1000; 
Output對於給定的字串,如果能AC則請輸出字串“Accepted”,否則請輸出“Wrong Answer”。 
Sample Input

zojozojoozoojoooozoojoooozoojozojooooozojozojoooo
 
Sample Output
AcceptedAcceptedAcceptedAcceptedAcceptedAcceptedWrong AnswerWrong Answer
 


#include<stdio.h>#include<string.h>char s[2001];char s2[2001];void check(){    int cnt=0;    memset(s2,0,sizeof(s2));    int flag1,flag2,flag3;    flag1=flag2=flag3=-1;    int len=strlen(s);    if(strcmp("zoj",s)==0)    {        printf("Accepted\n");        return ;    }    else    {        for(int i=0;i<len;++i)        {            if(s[i]!='z'&&s[i]!='o'&&s[i]!='j')            {                flag3=1;                break;            }        }        for(int i=0;i<len;++i)        {            if(s[i]=='z')            {                flag1=i;                break;            }        }        for(int i=len-1;i>=0;--i)        {            if(s[i]=='j')            {                flag2=i;                break;            }        }        if(flag1>flag2||flag1==-1||flag2==-1||flag3==1)        {            printf("Wrong Answer\n");        }        else        {             for(int i=flag1+1;i<flag2;i++){                    if(s[i]=='o'){                        cnt++;                    }//統計z、j中間o的個數             }             if(cnt!=flag2-flag1-1||cnt==0){//判斷z、j中間是否出現除o以外的字元;cnt=0是zoj中間沒有出現o,不合法;                 printf("Wrong Answer\n");             }             else{                 //j後面的o的個數除以z前面的o的個數等於z和j之間的o的個數                 if(flag1*cnt==len-flag2-1){                     printf("Accepted\n");                 }                 else{                     printf("Wrong Answer\n");                 }             }        }    }}int main(int argc, char *argv[]){    while(~scanf("%s",s))    {        check();    }    return 0;}


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.