HDU 3788 ZOJ问题
2017-09-28 11:12
387 查看
ZOJ问题
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4669 Accepted Submission(s): 1443
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
zoj
ozojo
ozoojoo
oozoojoooo
zooj
ozojo
oooozojo
zojoooo
Sample Output
Accepted
Accepted
Accepted
Accepted
Accepted
Accepted
Wrong Answer
Wrong Answer
观察第二种和第三种情况,容易得出规律:z前面的o乘z和j中间的o等于j后面的o
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char str[1010];
int main(){
//freopen("in.txt","r",stdin);
while(~scanf("%s",str)){
int len=strlen(str);
int z,o,j;
int cnt_z=0,cnt_o=0,cnt_j=0;
for(int i=0;i<len;i++){
if(str[i]=='z'){
z=i;
cnt_z++;
}
else if(str[i]=='o') cnt_o++;
else{
j=i;
cnt_j++;
}
}
if(cnt_z!=1||cnt_o==0||cnt_j!=1){
cout<<"Wrong Answer"<<endl;
}
else{
if(z*(j-z-1)==len-j-1){
cout<<"Accepted"<<endl;
}
else cout<<"Wrong Answer"<<endl;
}
}
}
相关文章推荐
- hdu-3788-ZOJ问题
- hdu 3788 ZOJ问题
- hdu杭电3788 ZOJ问题
- hdu-3788-ZOJ问题
- hdu 3788 zoj问题
- HDU 3788 zoj问题
- hdu 3788 zoj问题
- ZOJ问题 HDU - 3788(浙大计算机研究生复试上机考试-2010年 )
- HDU 3788 ZOJ问题
- hdu 3788 ZOJ问题 (字符串)
- hdu 3788 ZOJ问题
- HDU 3788 ZOJ问题
- HDU 3788 ZOJ问题
- 【杭电】[3788]ZOJ问题
- HDOJ 3788 ZOJ问题(观察推断题)
- hdu-oj ZOJ问题
- 【杭电oj】3788 - ZOJ问题(坑)
- 杭电 Problem 3788 ZOJ问题
- HDU--3788:ZOJ
- 杭电 3788 zoj问题