這道題的大意這樣的:
給定乙個小寫字串str,要求你對它進行猜測,每次只能猜乙個字元,如果你猜的這個字元在str中,那麼此次猜測正確,並且所有在str裡的相同字元都算作猜對;如果你猜的這個字元不在str中,那麼此次猜測錯誤,猜錯次數+1。如果在猜錯次數達到7次(或:>=7次)時,你還沒有完全猜出str裡的所有字元,那麼「you lose.」;如果在猜錯次數達到7次之前,你已經完全猜出str裡的所有字元,那麼"you win.";如果在猜錯次數達到7次之前,你沒有完全猜出str裡的所有字元,那麼"you chickened out."。
其中需要注意兩點:
1,如果你猜的字元,在str中,那麼str裡所有相同的字元都被算作猜對;
2,同樣猜錯的字元,只算作猜錯一次(不重複計算)。
個人解題思路參考:
根據此題的題意和上面的兩點注意,可以發現,給出的猜測字串str和你作出的猜測字串gus_str裡重複的字元,對解題干擾較大,可以考慮對這兩個字串進行處理:去掉重複的字元;但要注意保持字串裡的字元順序不變。
即:原來的字串是:cheese,經過「去重複字元處理」後,應該變為:ches,而不應該變為諸如:cehs 等形式。
下面是自己的**,ac通過:
#include#include#define max 1024
char s[max],ss[max];
char g[max],gg[max];
void delre()
}} if(leftnum>0&&strokenum<7)
printf("%s\n",str[1]);
} return 0;
}
UVa 489 劊子手遊戲
遊戲規則,計算機想乙個單詞讓你猜,你每次可以猜乙個字母,如果單詞裡有那個字母,所有該字母都會顯示出來,如果沒有那個字母 則計算機會在一副 劊子手 畫上填一筆,這幅畫一共需要7筆就能完成,因此你最多只能錯6次。注意猜乙個已經猜過的字母也算錯。在本題中,你的任務是編寫乙個 裁判 程式,輸入單詞和玩家的猜...
UVA 489 劊子手遊戲
在 劊子手法官 中,你要編寫乙個程式來評判一系列的劊子手遊戲。為每乙個遊戲中,給出謎語的答案和猜測。規則和經典遊戲一樣。關於劊子手,如下所示 1。參賽者試圖通過猜乙個字母來解開謎題。2。每次猜對時,單詞中所有匹配猜測的字元都將被 轉換 結束了。例如,如果你的猜測是 o 而單詞是 book 那麼 o ...
劊子手遊戲 hang man,uva 489
劊子手遊戲 題目 遊戲規則是這樣的 計算機想乙個單詞讓你猜,你每次可以猜乙個字母。如果單詞裡有那個字母,所有該字母會顯示出來 如果沒有那個字母,則計算機會在一幅 劊子手 畫上填一筆。這幅畫一共需要7筆就能完成,因此你最多只能錯6次。注意,猜乙個已經猜過的字母也算錯。在本題中,你的任務是編寫乙個 裁判...