互联网公司面试题之一

问题:对给定的字符串(只包含'z','o','j'三种字符),判断它是否能AC。
判断是否能够AC的规则如下:
(1)zoj能AC;
(2)若字符串形式为xzojx,则也能AC,其中x可以是N个'o'或者为空;
(3)若azbjc能AC,则azbojac也能AC,其中a,b,c为N个'o'或者为空。


答:实现代码如下:

#include <stdio.h>
#include <string.h>

int main() 
{
	char s[1000];
	int l=0,z=0,j=0;
	int a,b,c;
	while(scanf("%s",s)!=EOF){
		l=strlen(s);
		if(l==3) printf("Accepted\n");
		else if(s[l/2]=='o'&&s[l/2-1]=='z'&&s[l/2+1]=='j') printf("Accepted\n");
		else{
			z=j=0;
			while(s[z++]!='z');
			j=z;
			while(s[j++]!='j');
			a=z-1; b=j-z-1; c=l-j;
			if(a<=c && b>1) printf("Accepted\n");
			else printf("Wrong Answer\n");
		}
		
	}
	return 0;
}



猜你喜欢

转载自yuhuang-neil.iteye.com/blog/1291297