資源描述:
《撲克牌洗牌模型》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、《數(shù)學(xué)模型》課程結(jié)業(yè)論文撲克牌洗牌模型9/14任務(wù)書(shū)[要求]1、將所給的問(wèn)題翻譯成漢語(yǔ);2、給論文起個(gè)題目(名字或標(biāo)題)3、根據(jù)任務(wù)來(lái)完成數(shù)學(xué)模型論文;4、論文書(shū)寫格式要求按給定要求書(shū)寫;5、態(tài)度要認(rèn)真,要獨(dú)立思考,獨(dú)立完成任務(wù);6、論文上交時(shí)間:6月1日前(要求交紙質(zhì)論文和電子文檔)。7、嚴(yán)禁抄襲行為,若發(fā)現(xiàn)抄襲,則成績(jī)記為“不及格”。[任務(wù)]一天,魔術(shù)師表演了這樣一個(gè)節(jié)目:將一副看起來(lái)雜亂無(wú)章?lián)淇伺疲ㄈサ?個(gè)王,52張)排成一列展示給觀眾,然后將牌合起來(lái)(背面朝上),左手將牌上半部分(26張)拿起,右手
2、拿下半部分,把兩部分牌相隔一張進(jìn)行交叉洗牌(背面朝上),第一張是左手拿的。這樣反復(fù)洗牌4次,最后將牌展示給觀眾,牌的排列結(jié)果是:?A,?A,?A,?A,?2,?2,?2,?2,…,?K,?K,?K,?K。試問(wèn)原來(lái)牌的排列的花色和序號(hào)是什么?試用數(shù)學(xué)方法建立最終的排列結(jié)果與最初排列結(jié)果之間的關(guān)系。成績(jī)?cè)u(píng)定單評(píng)語(yǔ):成績(jī)?nèi)握n教師簽字年月日9/14摘要把52張撲克牌看成一維數(shù)組,用逆推法推出原來(lái)的排列。設(shè)數(shù)組a=[1,2,3,4,…,52],對(duì)數(shù)組進(jìn)行從新排列。1,2,3,4分別對(duì)應(yīng)紅A,黑A,方A,梅A,依次類推
3、。設(shè)加權(quán)函數(shù),數(shù)組b和數(shù)組c,得到的非零數(shù)組c表示右手拿的部分,等零的部分放在數(shù)組b中表示左手拿的部分,重新合為一維新數(shù)組,然后重復(fù)四次過(guò)程,最后得到原來(lái)的排列,依次相對(duì)應(yīng)即可推出原來(lái)?yè)淇伺频幕ㄉ托蛱?hào)。9/14關(guān)鍵詞:排列;逆推;加權(quán)函數(shù);9/14目錄論文正文:11.1問(wèn)題重述11.2符號(hào)說(shuō)明及模型假設(shè)11.2.1符號(hào)說(shuō)明11.2.2模型假設(shè)11.3問(wèn)題分析及模型建立21.3.1問(wèn)題分析21.3.2模型建立21.4模型求解31.5結(jié)果31.6優(yōu)缺點(diǎn)及改進(jìn)51.6.1優(yōu)缺點(diǎn)51.6.2改進(jìn)方法5參考文獻(xiàn)6附
4、錄79/14論文正文:撲克牌洗牌模型1.1問(wèn)題重述將一副撲克牌(52張)均分成兩部分,左手拿上半部分,右手拿下部分,把兩部分牌相隔一張進(jìn)行交叉洗牌(背面朝上),第一張是左手拿的。這樣反復(fù)洗牌4次,最后將牌展示給觀眾,牌的排列結(jié)果是:?A,?A,?A,?A,?2,?2,?2,?2,…,?K,?K,?K,?K。用數(shù)學(xué)方法建立最終的排列結(jié)果與最初排列結(jié)果之間的關(guān)系。這是一個(gè)從新排列的問(wèn)題,把一副撲克牌抽象成一組數(shù),用數(shù)學(xué)方法,對(duì)結(jié)果進(jìn)行分析,然后建立模型求出洗牌前的排列。1.2符號(hào)說(shuō)明及模型假設(shè)1.2.1符號(hào)說(shuō)明
5、1.2.2模型假設(shè)為了簡(jiǎn)化問(wèn)題,我們可以先忽略花色和排列,就把52張撲克牌看成一維數(shù)組,簡(jiǎn)化成數(shù)組之后,我們就可以用數(shù)學(xué)方法對(duì)數(shù)組進(jìn)行計(jì)算了。可以用逆推法推出原來(lái)的排列。設(shè)數(shù)組a=[1,2,3,4,…,52],用逆推法對(duì)數(shù)組進(jìn)行從新排列。1,2,3,4分別對(duì)應(yīng)紅A,黑A,方A,梅A,依次類推。設(shè)加權(quán)函數(shù),數(shù)組b和數(shù)組c,得到的非零數(shù)組c表示右手拿的部分,等零的部分放在數(shù)組b中表示左手拿的部分,重新合為一維新數(shù)組,然后重復(fù)四次過(guò)程,最后得到原來(lái)的排列,依次相對(duì)應(yīng)即可推出原來(lái)?yè)淇伺频幕ㄉ托蛱?hào)。9/141.1問(wèn)
6、題分析及模型建立1.1.1問(wèn)題分析已知經(jīng)過(guò)四次洗牌后得到的結(jié)果為?A,?A,?A,?A,?2,?2,?2,?2,…,?K,?K,?K,?K。要想得到洗牌前排的排列和花色,很顯然要用逆推的方法。按照洗牌規(guī)則,逆推出洗牌前的排列和花色。洗牌規(guī)則是:左手將牌上半部分(26張)拿起,右手拿下半部分,把兩部分牌相隔一張進(jìn)行交叉洗牌(背面朝上),第一張是左手拿的。我們只要想辦法交叉的牌分開(kāi),就能逆推出原來(lái)的排列和花色。1.1.2模型建立我們把52張撲克牌看成一個(gè)一維數(shù)組,1,2,3,4分別對(duì)應(yīng)紅A,黑A,方A,梅A,依
7、次類推。這樣我們就可以用數(shù)學(xué)方法建立洗牌前后的關(guān)系了。設(shè)數(shù)組a=[1,2,3,4,…,52],加權(quán)函數(shù)f(n)=((-1)^n+1)/2。如果a*f(n)==0,我們就把這些數(shù)拿出來(lái)放到數(shù)組b中;如果a*f(n)!=0,我們就把這些數(shù)拿出來(lái)放到數(shù)組c中;然后把數(shù)組b和c重新組成一組新的排列,b中的數(shù)在前,c中的數(shù)在后;重復(fù)上述過(guò)程4次,就可得到最初的排列;最后按照假設(shè)的對(duì)應(yīng)法則還原成撲克牌的排列和花色。按照上述方法我們就可以編程把洗完后交叉的牌分離開(kāi)分別放到數(shù)組b和c中,然后在組成一個(gè)新的一維數(shù)組。在mat
8、lab中編程:k=0;i=26;c=[];b=[];forn=1:52a(n)=n;ifa(n)*(((-1)^n+1)/2)==0k=k+1;b(k)=a(n);elsei=i+1;c(i)=a(n);end9/14endk=26;fori=27:52k=k+1;b(k)=c(i)end根據(jù)以上程序就可以推出第四次洗牌前的排列和花色,重復(fù)四次就可得到想要的結(jié)果。1.1模型求解我們假設(shè)52張撲克成一組數(shù)列,并且1