ZOJ问题
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
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'或者为空;
是否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
zoj ozojo ozoojoo oozoojoooo zooj ozojo oooozojo zojoooo
Sample Output
Accepted Accepted Accepted Accepted Accepted Accepted Wrong Answer Wrong Answer恩,题目不太好理解,然后这题。。。。。#include<stdio.h> #include<string.h> char ss[1010]; int main() { int lens,i,a,b,c; while(~scanf("%s",ss)) { lens=strlen(ss); i=0;a=0;b=0;c=0; while(ss[i]=='o')i++,a++; if(ss[i]=='z') { i++; while(ss[i]=='o')i++,b++; if(ss[i]=='j') { i++; while(ss[i]=='o')i++,c++; if(b==1&&a==c)printf("Accepted\n");//这句可以不要,直接下面那个条件就ok else if(b&&a*b==c)printf("Accepted\n");//恩,换成c/b==a就是错的。。。 else printf("Wrong Answer\n"); } else printf("Wrong Answer\n"); } else printf("Wrong Answer\n"); } return 0; }