推 meteor009:我再想想~非常感謝幫忙^ ^ 12/14 02:34
※ 引述《meteor009 (椰子)》之銘言:
: 已爬文
: 玩法:電腦猜數字(4位數,數字不重複)
: 使用者給幾A幾B
: 我的做法:
: 一開始把電腦可能的答案(0123~9876,去除中間重覆的數字)存到一個陣列裡
: ↑使用list<String>
如果是我的話 我會Random四次 取出4個不重複的數字
存在陣列裡的話
到時候要從幾A幾B 挑出符合的數字 會很麻煩
: 第一次隨便Random一個出來,然後使用者給?A?B
: 接著就出現問題了...Orz
: 我不知道該怎麼讓電腦根據使用者給的?A?B去可能的答案陣列中剔除不符合的數字
: 然後再從剩餘的數字陣列中Random出一個數字作為答案
應該考慮的情形會有
4A0B
3A0B (不可能會有3A1B)
2A2B 2A1B 2A0B
1A3B 1A2B 1A1B 1A0B
0A4B 0A3B 0A2B 0A1B
0A0B
除了 4A0B 跟 0A0B 這種不用判斷的外
可以分成
數字都出現的
2A2B
1A3B
0A4B
跟有缺的
其他剩下全部
數字都出現的就互相調換就可以了
有缺的就比較麻煩了
要確定正確的是哪些後 再把其他的數字一個個帶進來試
應該就可以了
: 麻煩板上的高手大大救救我 T___T
: 先感謝大家了~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.73.91.55