約瑟夫環問題(華科軟院上機題目)

2021-09-11 18:22:41 字數 349 閱讀 8837

問題分析:一群人(排列序號從1到n,n可設定)圍成一圈,按一定規則出列,剩餘的人仍然圍成一圈.出列規則是順著1到n的方向對圈內的人從1到c計數(c可設定),圈內計數為c的人出列,剩餘的人重新計數,按上述規則,讓圈內所有的人出列.請程式設計順序輸出出列編號的序列

**如下:

#includeint a[100]=;   //定義乙個陣列,用來記錄n個人的編號

//output()為輸出出列編號序列的函式,引數分別為總人數n和規定出列的數字c

void output(int n,int c)

}}void main()

2019華科軟院學碩上機(二) 進製轉換

十二進位制是數學中一種以12為底數的計數系統,它由0 9,a,b組成,與十進位制的對應關係是 0 9對應0 9,a對應10,b對應11。例如,十二進位制的a2,十進位制是122。輸入乙個僅含十二進位制數字的字串 字母一律小寫,不超過8個字元 完成下列任務 1 輸出該十二進位制數每一位對應的十進位制數...

演算法題目 約瑟夫環問題

題目 0,1,n 1這n個數字排成乙個圓圈,從數字0開始每次從這個圓圈裡刪除第m個數字。求出這個圓圈裡剩下的最後乙個數字。解法一 經典解法,用環形鍊錶模擬圓圈。這種方法每刪除乙個數字需要m步運算,總共有n個數字,因此總的時間複雜度是o mn 同時這種思路還需要乙個輔助鍊錶來模擬圓圈,其空間複雜度是o...

演算法題目 約瑟夫環問題

題目 0,1,n 1這n個數字排成乙個圓圈,從數字0開始每次從這個圓圈裡刪除第m個數字。求出這個圓圈裡剩下的最後乙個數字。解法一 經典解法,用環形鍊錶模擬圓圈。這種方法每刪除乙個數字需要m步運算,總共有n個數字,因此總的時間複雜度是o mn 同時這種思路還需要乙個輔助鍊錶來模擬圓圈,其空間複雜度是o...