#include <iostream>
#include <vector>
#include <string>
#include <string.h>
#include <stdio.h>
#include <algorithm>
#define maxn 100010
using namespace std;
int main()
{
int number;
string word;
string guess;
while(cin>>number>>word>>guess)//输入
{
int count=0;//错误次数
vector<bool> show;
//创建一个与单词对应的标记数组,当猜中字母时对应位置1
for(int i=0;i<word.length();i++)
{
show.push_back(0);
}
//结果与guess的顺序无关,给guess排序便于判断重复;
sort(guess.begin(),guess.end());
for(int i=0;i<guess.length();i++)
{
//找出word中与guess[i]相同的字符并标记,如果guess[i]的字符重复出现则count+=1
//如果没有找到对应字符count+=1
bool tag=0;
if(i>0)
{
if(guess[i]==guess[i-1])
count++;
}
for(int j=0;j<word.length();j++)
{
if(word[j]==guess[i])
{
show[j]=1;
tag=1;
}
}
if(tag==0) count++;
}
bool win=1;
for(int i=0;i<show.size();i++)
{
if(show[i]==0)
win=0;
}
if(count>6)
win=0;
if(count<=6&&win==0)
cout<<"You chickened out"<<endl;
if(win==1)
cout<<"you win"<<endl;
if(count>6&&win==0)
cout<<"you lose"<<endl;
}
}
例题4-2 刽子手游戏
最新推荐文章于 2021-12-25 20:29:11 发布