博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA - 489 Hangman Judge
阅读量:5320 次
发布时间:2019-06-14

本文共 1412 字,大约阅读时间需要 4 分钟。

/*  入门经典P80-81有题解,十分详细  入门经典上有提醒,猜一个已经猜过的字母也算错...我英语理解能力不是太好,猜测应该是原题里的这句话"Each unique wrong guess only counts against the contestant once.",也许是表示每次错误的猜测都是单独起作用的?所以如果两次猜错都是同一个字母,那就错两次?    总而言之,英文阅读能力还是要加强,不然连题目都读不懂 T^T    另外发现,我用C++写的时候,DevC上居然报了一堆编译错,说left变量有问题,后来想了想,left应该算C++的关键字,因为IO流控制输入输出时,是有ios::left表示输入时左对齐的,所以就换成了rest    务必谨慎!~就像之前遇到过的,round和clock也是C++有的函数,不要再用它们定义变量名了...越学越发现直接基础并不太扎实,加油加油,日进有功!*/

#include 
#include
//#define debugusing namespace std;const int maxn = 1005;int rest, chance, win, lose;char word[maxn], ans[maxn];void guess(char ch){ bool flag = false; int len = strlen(word); for (int i = 0; i < len; i++) if (word[i] == ch) { rest--; word[i] = ' '; flag = true; } if (!flag) chance--; if (!chance) lose = 1; if (!rest) win = 1;}int main(){ #ifdef debug freopen("E:\\in.txt", "r", stdin); freopen("E:\\out.txt", "w", stdout); #endif int rnd; while (cin >> rnd >> word >> ans && rnd != -1) { win = lose = 0; chance = 7; rest = strlen(word); int len = strlen(ans); for (int i = 0; i < len; i++) { guess(ans[i]); //猜一个字母 if (win || lose) break; //检查状态 } //根据结果进行输出 cout << "Round " << rnd << endl; if (win) cout << "You win."; else if (lose) cout << "You lose."; else cout << "You chickened out."; cout << endl; } #ifdef debug fclose(stdin); fclose(stdout); #endif return 0;}

转载于:https://www.cnblogs.com/mofushaohua/p/7789534.html

你可能感兴趣的文章
GIT历史:Why Bitkeeper Isn't Right For Free Software
查看>>
android O 蓝牙设备默认名称更改
查看>>
mysql查询今天,昨天,近7天,近30天,本月,上一月数据方法
查看>>
malloc free[zz]
查看>>
Django基础,Day9 - 静态文件目录与路径设置说明(eg. images, JavaScript, CSS)
查看>>
summernote 上传图片到图片服务器的解决方案(springboot 成功)
查看>>
简单理解Socket
查看>>
sql中 in 、not in 、exists、not exists 用法和差别
查看>>
Android BroadCastReceiver介绍
查看>>
关于腾讯云视频的接入遇到的坑
查看>>
【Linux笔记】CentOS 7 systemctl、firewalld
查看>>
SDK目录结构
查看>>
springmvc注解
查看>>
结对作业-四则运算GUI
查看>>
malloc() & free()
查看>>
HDU 2063 过山车
查看>>
jdbc oracle 连接字符串
查看>>
LLVM language 参考手册(译)(3)
查看>>
编译uboot提示libasm-offsets.c10 error bad value (armv5)解决方法
查看>>
备忘录模式实例1
查看>>