作者Berger927 (rabbit)
看板MATLAB
標題Re: [其他] 類似心電感應的撲克牌遊戲
時間Sat May 5 13:46:17 2012
※ 引述《vincent59 (愛世代)》之銘言:
: 各位平常寫matlab的先進,我想偶而還是要放輕鬆。
: 在網路上發現有人用matlab寫了一個小遊戲,不曉得有沒有人玩過??
: ***************************************************************
: 一開始決定好那張撲克牌,經過2道手續。
: 程式會顯示出,你原本選的是那一張撲克牌。
: 功能介紹的網頁:http://ppt.cc/p~dy
: 網頁有提供下載該遊戲位置
: 滿準的!我嘗試從程式碼去了解,它怎麼猜到的。
: 但我還是不太懂
與其說是程式碼 不如說是演算法
更簡單的說 在邏輯上就是 3^3(判別) > 21(狀況)
如下的三元樹狀圖: 判別三次即可得到27種可能性
Node1 Node2 Node3
3^1 3^2 3^3
/-1 ---<- (a,b,c)
/--<--2 ---<- (d,e,f)
/ \-3 ---<- (g,h,i)
/
/ /-4 ---<- (j,k,l)
囧<------<--5 ---<- (m,n,o)
\ \-6 ---<- (p,q,r)
\
\ /-7 ---<- (s,t,u)
\--<--8 ---<- (v,w,x)
\-9 ---<- (y,z,27)
還是不懂嗎? 直接分類看看。
舉個例子 :
step 1 : 21/3 => 7
1 a h
2 b i
3 c j
4 d k
5 e l
6 f m
7 g n
當你選擇第一欄位時 則二三欄位的成員確定不可能(x)
因此下一步我們只要選擇第一欄位的成員來判別即可
step 2 : 7/3 => 3
1 4 6
2 5 7
3 x x
x x x
x x x
x x x
x x x
假定又選擇第一欄位(不確定數最多) 則4~7又被打掉(x) 剩下1~3
step 3 : 3/3 => 1
1 2 3
x x x
x x x
x x x
x x x
x x x
x x x
接下來你不管選擇哪一欄位 都可以得到一個明確的解
這只是個簡單的邏輯 跟心不心電不電的一點關係都沒有...
--
1F:推 ttttt40 :原來我有戀童癖阿...(望向千元鈔...02/06 15:45
2F:推 jkn26 :我為什麼比較喜歡魚 (望向兩千元鈔...02/06 16:42
3F:→ evilgogo :原來我的魚控是這樣來的啊…(望樓上…02/06 16:55
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.230.104.80
4F:推 vincent59:原po真神人也 (狀態跪拜中) 05/05 14:44
5F:→ vincent59:在下還是多努力才行 05/05 14:46