In ``Hangman Judge,'' you are to write a program that judges a series of Hangman games. For each game, the answer to the puzzle is given as well as the guesses. Rules are the same as the classic game of hangman, and are given as follows:
- The contestant tries to solve to puzzle by guessing one letter at a time.
- Every time a guess is correct, all the characters in the word that match the guess will be ``turned over.'' For example, if your guess is ``o'' and the word is ``book'', then both ``o''s in the solution will be counted as ``solved.''
- Every time a wrong guess is made, a stroke will be added to the drawing of a hangman, which needs 7 strokes to complete. Each unique wrong guess only counts against the contestant once.
______ | | | O | /|\ | | | / \ __|_ | |______ |_________|
- If the drawing of the hangman is completed before the contestant has successfully guessed all the characters of the word, the contestant loses.
- If the contestant has guessed all the characters of the word before the drawing is complete, the contestant wins the game.
- If the contestant does not guess enough letters to either win or lose, the contestant chickens out.
Your task as the ``Hangman Judge'' is to determine, for each game, whether the contestant wins, loses, or fails to finish a game.
Input
Your program will be given a series of inputs regarding the status of a game. All input will be in lower case. The first line of each section will contain a number to indicate which round of the game is being played; the next line will be the solution to the puzzle; the last line is a sequence of the guesses made by the contestant. A round number of-1would indicate the end of all games (and input).
Output
The output of your program is to indicate which round of the game the contestant is currently playing as well as the result of the game. There are three possible results:
You win. You lose. You chickened out.
Sample Input
1 cheese chese 2 cheese abcdefg 3 cheese abcdefgij -1
Sample Output
Round 1 You win. Round 2 You chickened out. Round 3 You lose.
#define RUN #ifdef RUN #include <stdio.h> #include <stdlib.h> #include <string.h> #include <assert.h> #include <string> #include <iostream> #include <sstream> #include <map> #include <set> #include <vector> #include <list> #include <cctype> #include <algorithm> #include <utility> #include <math.h> using namespace std; #define MAXN 105 int n; char solution[MAXN]; char guess[MAXN]; int flag[MAXN]; void play(){ memset(flag, 0, sizeof(flag)); int i, j; int wrong = 0; for(i=0; i<strlen(guess); i++){ bool iswrong = true; // Check if it is a same character as previous examined one char* pch = strchr(guess, guess[i]); if(pch!=NULL && pch-guess==i){ for(j=0; j<strlen(solution); j++){ if(flag[j]==0 && solution[j]==guess[i]){ flag[j] = 1; iswrong = false; } } if(iswrong){ wrong++; } if(wrong >= 7){ break; } } } printf("Round %d\n", n); // Examine int k = 0; for(k=0; k<strlen(solution); k++){ if(flag[k] == 0){ if(wrong < 7){ printf("You chickened out.\n"); return; } else{ printf("You lose.\n"); return; } } } if(k == strlen(solution)){ printf("You win.\n"); } } int main(){ #ifndef ONLINE_JUDGE freopen("489.in", "r", stdin); freopen("489.out", "w", stdout); #endif while(scanf("%d", &n)==1 && (n!=-1)){ memset(solution, '\0', sizeof(solution)); memset(guess, '\0', sizeof(guess)); scanf("%s%s", solution, guess); //printf("%s\n", ans); //printf("%s\n", guess); play(); } } #endif
相关推荐
matlab开发-HangMan。著名的绞刑游戏-在结束之前猜猜未知的词!
IOS应用源码之clawoo-Hangman-f89ebe8.zip
iOS游戏应用源代码——clawoo-Hangman-f89ebe8.zip
python项目实战
SJM-Dev-School-Hangman:Saras Super MEGA令人敬畏的剧本-AKA Hangman
Onm-Hangman-demo 方法 这个子手演示是一个快速的原型-旨在平衡周到的前端体系结构和开发速度。 JS构建是通过Gulp进行的-我正在利用Babel库来集成一些ES6语法。 CSS尚未进行预处理,而是手动添加-由于覆盖范围和时间...
BILD-IT-Hangman
Assignment-2-Hangman
moderately-harder-hangman
u03-hangman 该项目的目的是完成JavaScript @ Chas Academy课程中的u03-hangman作业。 截止日期为2020年11月15日。
一个简单的Hang子手游戏IT-不定期使用JavaScript。 ZH-我第三次使用JS做的简单的子手游戏。Anteprima /屏幕截图:描述/说明: IT_ Nel gioco dell'impiccato occare indovinare una parola misteriosa scelta a caso...
经典-Hangman-2019
react-hangman-starter
js-hangman-starter
Java项目-Hangman 文字游戏《 Hangman》的命令行界面单人版
Joe-s-Python-Hangman 我的hngman游戏版本有些借用的图标和图像,我现在正在努力生成一个随机单词。 我还将尝试使用Javascript进行此游戏 我试图提交并推动回购添加一些单词只是为了保存更改
Projectweek2-hangman Groep 4 hangman voor项目第2周。
CL-Hangman 只是我的经典猜词游戏版本,您必须在“男人”被挂起之前猜出随机选择的单词的正确字母(或猜单词本身)。
6_2-hangman-game