UVa489 Hangman Judge(侩子手游戏)

UVa489 Hangman Judge(侩子手游戏)_第1张图片

UVa489 Hangman Judge(侩子手游戏)_第2张图片

思路:首先统计给出单词中,有哪些字母出现以及总共的字母数量。然后再与给出的字符串进行比较即可。

#include
using namespace std;
int main() {
	int n, i, na[30], count, flag, sum;
	char a[50], b[50];
    while(scanf("%d", &n) != EOF && n != -1){
    	scanf("%s%s", a, b);
    	count = 0;flag = 2;sum = 0;
    	memset(na, 0, sizeof(na));
    	for(i = 0;i < strlen(a);i ++)na[a[i]-'a'] = 1;
    	for(i = 0;i < 26;i ++)sum += na[i];
    	
    	int len = strlen(b);
    	for(i = 0;i < len;i ++){
			if(!na[b[i]-'a'])count++;
			else if(na[b[i]-'a'] == 1){
				na[b[i]-'a']--;
				sum --;
			}
			if(count > 6){
				flag = 0;
				break;	
			}else if(!sum){
				flag = 1;
				break;
			}
		}
		
    	printf("Round %d\n", n);
    	if(!flag)printf("You lose.\n");
    	else if(flag == 1)printf("You win.\n");
    	else printf("You chickened out.\n");
	}
    return 0;
}

 

你可能感兴趣的:(C/C++)