http://ac.jobdu.com/problem.php?pid=1006 ZOJ问题
/*
若azbjc 能AC,则azbojac也能AC,其中a,b,c为N个'o'或者为空;
这里azbojac和azbjc相比 z和j中间+了一个o j后面就+了一个a 而z前面也有一个a
以此类推
如果再执行一次这个规定
那么z和j中间就+了2个o 后面也+了2个前面的a
...
所以z前面'o'的个数乘以z和j中间o的个数=j后面o的个数
*/
#include<iostream>
using namespace std;
#include<stdio.h>
#include<string.h>
int main(void)
{
int i,len,numj,numz,front,mid,back;
char str[1008];
while(scanf("%s",str)!=EOF)
{
len=strlen(str);
numj=numz=0;
for(i=0;i<len;i++)
{
if(str[i]=='j')
numj++;
else if(str[i]=='z')
numz++;
}
if(numj!=1 || numz!=1) //合法的字符串中只包含一个z和一个j
{
printf("Wrong Answer\n");
continue;
}
front=mid=back=0;
for(i=0;str[i]!='z';i++)
front++;
i++;
for(;i<len && str[i]!='j';i++)
mid++;
i++;
for(;i<len;i++)
back++;
if(mid>0 && front*mid==back)
printf("Accepted\n");
else
printf("Wrong Answer\n");
}
return 0;
}