




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上稱假幣問題實(shí)驗(yàn)報告信息論第一次作業(yè)學(xué)校:西安電子科技大學(xué)班別:班姓名:黃丹丹學(xué)號:專心-專注-專業(yè)1、 問題重述盒中有n個外形相同的硬幣,知道其中有一個重量不同的硬幣,但不知是比真幣輕,還是比真幣重?,F(xiàn)用一無砝碼天枰對現(xiàn)有硬幣進(jìn)行稱重來鑒別假幣,無砝碼天枰的稱重有3種結(jié)果,平衡,向左傾,向右傾。當(dāng)n=12;n=39;n=n時,如何稱重使實(shí)驗(yàn)次數(shù)最少,鑒別出假幣并判斷出輕或重?二、問題分析根據(jù)熵的可加性,一個復(fù)合事件的平均不確定性可以通過多次試驗(yàn)逐步解除。如果我們使實(shí)驗(yàn)所獲得的信息量最大,那么所需要的總試驗(yàn)次數(shù)就最少。(1)每一次使用天平,可以得到三種可能,左偏,右偏,
2、平衡,而且這三種可能是概率相等的,所以每一次使用天平的結(jié)果都攜帶log3的信息量。(2)要從N個硬幣中找到那個不一樣,可以有2N種概率相同的可能,每個硬幣都可能偏輕或者偏重,這個事件所攜帶的信息量是 log2N。所以可以得到 最少可以使用 log2N/log3次天平 就可以湊夠信息量,指出哪一個是不一樣的。3、 問題解決【問題一】設(shè)12個硬幣的編號分別為:1,2,3,4,5,6,7,8,9,10,11,12.三次稱重安排如下表:稱重序號左盤右盤其他11,2,3,45,6,7,89,10,11,1221,6,7,85,10,11,129,2,3,435,6,10,29,7,11,31,8,12,
3、4設(shè)3種稱重結(jié)果分別表示為:0:平衡,1:左重,-1:右重。得到如下鑒別結(jié)果:稱重鑒別結(jié)果稱重序號0231輕:Q重:Z假幣編號修正編號稱重結(jié)果0-1-1-1-1-1111110000010Z1ZZZZZZZQQQQ3249912121111101000100-101001101-10-1011010-11010-1-10-11100稱重結(jié)果11-1-10-111_QQQQ67851-1-11-111-1011-1稱重結(jié)果00-1111-1-1-100-11QQQQZZZZ_51768234-1-11-1-10-11-1-111-110-100-101-10-1參見上面表格,可用矩陣表示3次稱重
4、的安排,矩陣上面標(biāo)明12次硬幣的序號,矩陣的3行分別表示3次連續(xù)稱重時硬幣的放置狀態(tài),1表示放到左盤,-1表示放到右盤,0表示放到旁邊(不參與稱重)。比較上面的表格和矩陣,發(fā)現(xiàn):如果檢測結(jié)果與上面矩陣的某列符合,則對應(yīng)序號的硬幣為假幣,且重量較重;如果檢查結(jié)果與不包含在上述矩陣的列中,則、互換,得到假幣對應(yīng)序號,但重量較輕?!締栴}二】查閱資料得到,n次稱量最多可以在個球中找到不同的球,并判斷它的輕重。 (1)編碼:知道了球數(shù),就能算出需要稱量幾次;以這個次數(shù)作為長度,使用0、1、2排列組合進(jìn)行編碼,如、等等,再去掉全0、全1和全2,可知一共有個編碼;如果在一個編碼中,第一處相鄰數(shù)字不
5、同的情況是01、12或20,則我們稱它為正序碼,如;否則為逆序碼,如;在長度為n的編碼中,正序碼和逆序碼的數(shù)量相等,均為個。(2)賦值:如果把一個正序碼中的0換成1,1換成2,2換成0,則它仍然是正序碼;根據(jù)這個原理,我們把所有正序碼按3個3個進(jìn)行分組,如12001、20112、01220這3個就是一組;把正序碼一組一組地分配給小球,每球一個,直到分完;然后把每個正序碼的0換成2,2換成0,它就變成了一個逆序碼,如12001變成10221;這樣,每個小球就有了兩個編碼,一個正序,一個逆序,而且所有球都不重復(fù)。(3)稱重:第一輪,我們把所有正序碼第一位為0的小球放在天平左側(cè),為2的小球放在右側(cè),
6、其它的放在旁邊;如果天平左傾,記為0;右傾,記為2;平衡,記為1;然后是第二輪,把第二位為0的小球放在左側(cè),為2的放在右側(cè),同樣記下稱量結(jié)果;每一輪都按這個順序進(jìn)行,一共要稱n次,最終結(jié)果是個n位的編碼;如果編碼等于某個小球的正序碼,則這個小球比其它球重;如果編碼等于某個小球的逆序碼,則這個小球比其它球輕?!締栴}三】方法與問題二同4、 算法演示以為例()編號() 稱重正序碼第一位為的硬幣放在天枰的左側(cè),第一位為的放在右側(cè),第一位為的放在旁邊結(jié)果與事先挑選的硬幣一致五、編寫代碼#include <iostream>#include<algorithm>#include&l
7、t;cstring>#include<cstdio>#include<cstdlib>#include<set>using namespace std;set<int > sett;int k,num,n,m;int vsi10005,weight10005,fflag,s2i10005,heavy_or_light;char s100051005,rcd10005;int p=1,integ,leicheng=1;void ten2three(int a,char *s) num=0; for(int i=0;i<k;i+) si=
8、'0' while(1) snum+=a%3+'0' a/=3; if(a<=1) snum=a+'0' break; int judge1(int a) char sss310005; int integ3; ten2three(a,sss0); integ0=atoi(sss0); for(int i=0;i<k;i+) if(sss0i='0') sss1i='1' else if(sss0i='1') sss1i='2' else if(sss0i='2&
9、#39;) sss1i='0' integ1=atoi(sss1); for(int i=0;i<k;i+) if(sss1i='0') sss2i='1' else if(sss1i='1') sss2i='2' else if(sss1i='2') sss2i='0' integ2=atoi(sss2); int ok=1; for(int i=0;i<=2;i+) if(vsiintegi) ok=0; break; return ok; int judge2(in
10、t a) char stst10005; ten2three(a,stst); int ok=0; for(int i=0;i<k;i+) if(ststi!=ststi+1) if(ststi-'0'=0&&ststi+1-'0'=1) ok=1; else if(ststi-'0'=1&&ststi+1-'0'=2) ok=1; else if(ststi-'0'=2&&ststi+1-'0'=0) ok=1; break; return o
11、k; int judge3(int a) char cc10005; ten2three(a,cc); if(cc0='1') return 1; return 0; int judge4(int a) char cc10005; ten2three(a,cc); if(cc0='2'&&strlen(cc)=4) return 1; return 0;void bianma() for(int i=1;i<=leicheng;i+) if(judge1(i)&&judge2(i) ten2three(i,sp); inte
12、g=atoi(sp); sett.insert(integ); vsiinteg=1; for(int j=0;j<k;j+) if(spj='0') sp+1j='1' else if(spj='1') sp+1j='2' else if(spj='2') sp+1j='0' integ=atoi(sp+1); sett.insert(integ); vsiinteg=1; for(int j=0;j<k;j+) if(sp+1j='0') sp+2j='1
13、39; else if(sp+1j='1') sp+2j='2' else if(sp+1j='2') sp+2j='0' integ=atoi(sp+2); sett.insert(integ); vsiinteg=1; p=p+3; if(n%3=0&&p>=n) break; else if(n%3=1&&p>=n) for(int j=i+1;j<=leicheng;j+) if(judge1(j)&&judge2(j)&&judge3(j)
14、 ten2three(j,sp); break; else if(n%3=2&&p>=n-1) for(int j=i+1;j<=leicheng;j+) if(judge1(j)&&judge2(j)&&judge4(j) ten2three(j,sp); for(int jj=0;jj<k;jj+) if(spjj='0') sp+1jj='1' else if(spjj='1') sp+1jj='2' else if(spjj='2') sp+
15、1jj='0' p+=2; if(p>=n) break; void cheng() int lft10005,rght10005; for(int d=0;d<k;d+) int lnum=0,rnum=0,lsum=0,rsum=0; for(int i=1;i<=n;i+) if(sid='0') lftlnum+=i; lsum+=weighti; if(sid='2') rghtrnum+=i; rsum+=weighti; if(lnum>rnum) lnum-; lsum-=weightlnum; if(ln
16、um<rnum) rnum-; rsum-=weightrsum; printf("第%d次稱量:n",d+1); printf("左盤放:"); for(int i=0;i<lnum;i+) cout<<lfti<<" " cout<<endl; printf("右盤放:"); for(int i=0;i<rnum;i+) cout<<rghti<<" " cout<<endl; if(lsum>r
17、sum) rcdd='0' else if(lsum=rsum) rcdd='1' else if(lsum<rsum) rcdd='2' int bidui() for(int i=1;i<=n;i+) s2ii=atoi(si); int rcd2i,ans=0; rcd2i=atoi(rcd); for(int i=1;i<=n;i+) if(rcd2i=s2ii) ans=i; break; if(ans=0) heavy_or_light=0; for(int i=0;i<k;i+) if(rcdi='0') rcdi='2' else if(rcdi='2') rcdi='0' rcd2i=atoi(rcd); for(int i=1;i<=n;i+) if(rcd2i=s2ii) return i; else heavy_or_light=1; return ans; int main() cout<<"輸入硬幣數(shù)量,假幣編號,假幣重量"<<endl; cin>>n>>m>>fflag; memset(vsi,0,sizeof(vsi); f
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 旅游管理案例研究練習(xí)題
- 學(xué)科交叉融合促進(jìn)應(yīng)用型人才綜合素質(zhì)發(fā)展
- 零售電商行業(yè)銷售趨勢統(tǒng)計表
- 汽車工程維修技術(shù)知識點(diǎn)解析
- 2025年文化傳播與互聯(lián)網(wǎng)的綜合能力考核考試卷及答案
- 2025年現(xiàn)代詩歌鑒賞能力考試試卷及答案
- 2025年數(shù)理邏輯與數(shù)學(xué)思維考試試題及答案
- 2025年審計學(xué)基礎(chǔ)理論與實(shí)務(wù)能力提高測試卷及答案
- 2025年人工智能倫理與社會影響知識測試卷及答案
- 2025年綠色經(jīng)濟(jì)與可持續(xù)發(fā)展考試卷及答案
- 農(nóng)貿(mào)市場上半年工作總結(jié)報告
- 建筑材料(東北農(nóng)業(yè)大學(xué))智慧樹知到期末考試答案2024年
- 腦機(jī)接口技術(shù)在康復(fù)醫(yī)學(xué)中的應(yīng)用與創(chuàng)新
- 電力施工現(xiàn)場安全交底
- 加油站防范反恐評估報告
- 《真空系統(tǒng)設(shè)計》課件
- 家庭語言環(huán)境與兒童語言發(fā)展
- 短視頻起號運(yùn)營全攻略
- 清華人工骨成人顱骨修補(bǔ)首選課件
- 班主任微創(chuàng)意:59招讓班級管理腦洞大開
- 水工渡槽課程設(shè)計
評論
0/150
提交評論