您的位置:首页 > 其它

UVa489-Hangman Judge

2017-08-07 18:31 357 查看

UVa489-Hangman Judge

思路:

首先将答案串中的字母标记并计数不同字母个数K,然后遍历回答的串,如果标记过K–并取消标记,否则错误次数D++;

K==0||D>6时退出,判断输赢。

代码:

#include <bits/stdc++.h>

using namespace std;

int main()
{
int n,i;
char s[101],me[101];
while(scanf("%d",&n),~n)
{
int k=0,d=0;
scanf("%s %s",s,me);
map<char,int>mp;
for(i=0;i<strlen(s);i++)
{
if(!mp[s[i]]) k++;
mp[s[i]]=1;;
}
for(i=0;i<strlen(me);i++)
{
if(mp[me[i]]) {k--;mp[me[i]]=0;}
else d++;
if(k==0||d>6) break;
}
printf("Round %d\n",n);
if(d>6) printf("You lose.\n");
else if(k) printf("You chickened out.\n");
else printf("You win.\n");
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: