Python約瑟夫生者死者小游戲?qū)嵗v解
問題描述:
30 個(gè)人在一條船上,超載,需要 15 人下船。于是人們排成一隊(duì),排隊(duì)的位置即為他們的編號(hào)。
報(bào)數(shù),從 1 開始,數(shù)到 9 的人下船。如此循環(huán),直到船上僅剩 15 人為止,問都有哪些編號(hào)的人下船了呢?
解決思路:
給30個(gè)人編號(hào)1-30,每個(gè)人的初值都是1(在船上),i代表他們的編號(hào),j代表被扔下船的人數(shù)(j=15時(shí)循環(huán)結(jié)束),用check記數(shù),check=9時(shí)將對(duì)應(yīng)編號(hào)i的人置0(扔下船)并讓check重新記數(shù)。
當(dāng)i等于31時(shí),手動(dòng)將i置為1
當(dāng)對(duì)應(yīng)編號(hào)i的人值為0時(shí),代表此人已經(jīng)不在船上,i+1找到下一個(gè)人記數(shù),以此類推。
people={} for x in range(1,31): people[x]=1 # print(people) check=0 i=1 j=0 while i<=31: if i == 31: i=1 elif j == 15: break else: if people[i] == 0: i+=1 continue else: check+=1 if check == 9: people[i]=0 check = 0 print("{}號(hào)下船了".format(i)) j+=1 else: i+=1 continue
執(zhí)行以上實(shí)例,輸出結(jié)果為:
9號(hào)下船了
18號(hào)下船了
27號(hào)下船了
6號(hào)下船了
16號(hào)下船了
26號(hào)下船了
7號(hào)下船了
19號(hào)下船了
30號(hào)下船了
12號(hào)下船了
24號(hào)下船了
8號(hào)下船了
22號(hào)下船了
5號(hào)下船了
23號(hào)下船了
到此這篇關(guān)于Python約瑟夫生者死者小游戲?qū)嵗v解的文章就介紹到這了,更多相關(guān)Python 約瑟夫生者死者小游戲內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python實(shí)現(xiàn)滑雪者小游戲
- 教你用Python實(shí)現(xiàn)一個(gè)輪盤抽獎(jiǎng)小游戲
- python實(shí)現(xiàn)21點(diǎn)小游戲
- 教你用Python寫一個(gè)植物大戰(zhàn)僵尸小游戲
- 教你如何用python開發(fā)一款數(shù)字推盤小游戲
- python反編譯教程之2048小游戲?qū)嵗?/a>
- Python實(shí)現(xiàn)我的世界小游戲源代碼
- Python實(shí)現(xiàn)簡(jiǎn)單的2048小游戲
- 基于Python-Pycharm實(shí)現(xiàn)的猴子摘桃小游戲(源代碼)
- 用Python實(shí)現(xiàn)童年貪吃蛇小游戲功能的實(shí)例代碼
- 利用python制作拼圖小游戲的全過程
- 利用python如何實(shí)現(xiàn)貓捉老鼠小游戲
- 學(xué)會(huì)用Python實(shí)現(xiàn)滑雪小游戲,再也不用去北海道啦
相關(guān)文章
基于pyinstaller超級(jí)加密操作(加殼和轉(zhuǎn)c)
這篇文章主要介紹了基于pyinstaller超級(jí)加密操作 (加殼和轉(zhuǎn)c),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03Python之inspect模塊實(shí)現(xiàn)獲取加載模塊路徑的方法
今天小編就為大家分享一篇Python之inspect模塊實(shí)現(xiàn)獲取加載模塊路徑的方法,具有很好的價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10關(guān)于Python兩個(gè)列表進(jìn)行全組合操作的三種方式
這篇文章主要介紹了關(guān)于Python兩個(gè)列表進(jìn)行全組合操作的三種方式,兩個(gè)元組 (a, b)(c, d),則它們的組合有 a,c a,d b,c b,d,這就叫全組合,需要的朋友可以參考下2023-04-04jmeter執(zhí)行python腳本的實(shí)現(xiàn)示例
本文主要介紹了jmeter執(zhí)行python腳本的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05python使用websocket庫發(fā)送WSS請(qǐng)求
WebSocket是一種在客戶端和服務(wù)器之間進(jìn)行雙向通信的協(xié)議,Python中有許多WebSocket庫可供選擇,其中一個(gè)常用的是websocket庫,使用該庫可以輕松地發(fā)送WSS請(qǐng)求,需要的朋友可以參考下2023-10-10