UVaOJ 489 - Hangman Judge
2015-04-11 23:25
417 查看
#include <stdio.h> #include <string.h> #include <ctype.h> bool isWin(int a[]) { for(int i = 0; i<26; i++) { if(a[i] == 1) return false; } return true; } int main() { freopen("in.txt","r",stdin); int n; while(scanf("%d",&n)&&n!=-1) { int flag[26]= {0}; memset(flag,0,sizeof(flag)); getchar(); char s[1000],d[1000]; gets(s); int slen = strlen(s); for(int i = 0 ; i<slen; i++) { flag[s[i]-'a'] = 1; } gets(d); int dlen = strlen(d); int error = 0; bool win = false,isLose = false; for(int i = 0; i<dlen; i++) { if(flag[d[i]-'a'] == 1) { flag[d[i]-'a']=2; } else if(flag[d[i]-'a'] == 2||flag[d[i]-'a'] == 3) { continue; } else { flag[d[i]-'a'] = 3; error++; if(error == 7) { isLose = true; break; } } if(isWin(flag)) { win = true; break; } } printf("Round %d\n",n); if(win) { printf("You win.\n"); continue; } if(isLose) { printf("You lose.\n"); continue; } printf("You chickened out.\n"); } return 0; }
这个题花了比较长的 时间,囧~~
1、再提供三组测试数据,下面三种能过,基本就能A了。
4
cheeseab
cheeeeeeeeeeseabing
5
chinese
aaaaaaachinese
6
beautiful
beautiful
2、
上面
第4组数据说的是:同一个字母猜对了多次
第5组数据说的是:同一个字母猜错了多次,只记 错一次
第6组数据说的是:一个很长的数据
相关文章推荐
- UVAOJ489-Hangman Judge
- uvaoj 489 - Hangman Judge
- UVaOJ_489 - Hangman Judge
- uvaoj 489
- Uva 489: Hangman Judge
- UVa OJ 489 Hangman Judge
- UVa489 Hangman Judge
- UVA 489 - Hangman Judge
- 例题4-2 uva 489 - Hangman Judge
- 489 - Hangman Judge
- uva489 - Hangman Judge
- UVA 489 Hangman Judge
- UVa 489 Hangman Judge 【模拟】【练习函数的用法】
- uva489 Hangman Judge
- 489 - Hangman Judge
- UVa 489 Hangman Judge
- Hangman Judge uva489
- UVa_489 - Hangman Judge
- uva489 Hangman Judge
- Volume 0.Getting Started 489 - Hangman Judge