約瑟夫環(huán)問題單循環(huán)鏈表解法講解_第1頁
約瑟夫環(huán)問題單循環(huán)鏈表解法講解_第2頁
約瑟夫環(huán)問題單循環(huán)鏈表解法講解_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、約瑟夫環(huán)問題單循環(huán)鏈表解法Description約瑟夫環(huán)問題;有 N個人圍成一個環(huán),從第一個人開始報數(shù),報到M的人退出環(huán),并且由他的M值來代替原有的M值,要求輸出離開環(huán)的順序。Input第一行有2個數(shù),M和N。(0第二行有 N 個數(shù),表示每個人的 M 值。Output按照樣例的格式,輸出所有人退出環(huán)的順序。Sample Input4 65 4 2 3 4 2Sample Output4,123,6,5Source#include"iostream"#i nclude"cstdio"#include"cstdlib"using name

2、space std;typedef struct cnodeint label;int data;struct cnode *next;cnode;int m,n,i,value,j;cnode *p,*q;int main(cin>>m>>n;cnode *clist;q=(cnode *malloc(sizeof(cnode;clist=q;for(i=1;iv=n;i+cin>>value;cin>>value;p=(cnode *malloc(sizeof(cnode; p=new cnode;p->label=i;p->da

3、ta=value;p->next=NULL;q->next=p;q=p;if(i=nq->next=clist->next;p=clist;/coutv labelvfor(i=1;iv=n;i+for(j=1;jp=p->next;q=p->next;m=q->data;if(i=ncoutv labelvcoutv labelvv","p->next=q->next;delete q;system("pause"return 1;數(shù)組解法:#includeusing namespace std;int main(int *a,*b;int i,j,t,k,l,m,n; cin>>m>>n; a=new intn; b=new intn;for (i=0;icin>>ai;bi=i+1;bn-1=0;k=0;l=n-1;m=m%n;if (m=0 m=n;for (i=O;ifor (j=1;jl=k;k=bk;cout <t=n-i-1;m=ak%t;if (m=0 m=n-i-1;bl=bk;k=bk;cout <&l

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論