国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

算典04_例題_02_UVA-489

2019-11-06 06:09:48
字體:
來源:轉載
供稿:網友

Hangman Judge

題意

    給出一個單詞讓你猜,你每次可以猜一個字母。如果單詞里有那個字母,所有該字母會顯示出來;如果沒有那個字母,則會在一幅“劊子手”畫上填一筆。這幅畫一共需要7筆就能完成,因此你最多只能錯6次。猜一個已經猜過的字母也算錯。     給你要猜的字母和所猜的字母序列,請你判斷游戲結果。

題解

    這一題和上面那題挺相似的,還是用一個長度為26的數組做一個映射,記錄分字符串中字母A到Z出現的次數。而在猜的過程中,如果猜對了就將這個字母對應的記錄改為0,如果所猜的字母對應的記錄為0,則說明這次猜錯了。

#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int maxn = 1e4 + 5;#define met(a, b) memset(a, b, sizeof(a));int n, cnt[26];char a[maxn], b[maxn];char ot[][50] = {"You win.", "You chickened out.", "You lose."};int main() { #ifdef _LOCAL freopen("in.txt", "r", stdin); #endif while(scanf("%d", &n) && n != -1) { scanf("%s%s", a, b); int la = strlen(a), lb = strlen(b); met(cnt, 0); int ret = 0, ans = 0; for(int i = 0; i < la; ++i) ++cnt[a[i]-'a']; for(int i = 0; i < lb && la > 0; ++i) { if(cnt[b[i]-'a'] != 0) la -= cnt[b[i]-'a'], cnt[b[i]-'a'] = 0; else ++ret; if(ret >= 7) {ans = 2; break; } } if(la > 0 && ret < 7) ans = 1;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桐城市| 六枝特区| 饶平县| 屯门区| 昭平县| 栾城县| 潮州市| 庆安县| 田林县| 仁化县| 汉中市| 突泉县| 库伦旗| 黑河市| 敦煌市| 永德县| 南乐县| 涟水县| 汉阴县| 聂荣县| 海阳市| 洱源县| 郧西县| 韩城市| 丹江口市| 开鲁县| 铁力市| 阜新| 南投县| 新疆| 丹棱县| 航空| 平远县| 利津县| 巴林左旗| 吴堡县| 宝兴县| 南溪县| 兰考县| 临猗县| 扎兰屯市|