30 個人在一條船上,超載,需要 15 人下船。於是人們排成一隊,排隊的位置即為他們的編號。
報數,從 1 開始,數到 9 的人下船。如此循環,直到船上僅剩 15 人為止,問都有哪些編號的人下船了呢?
解決方法:
python代碼:
remove_sum=15
remove_num=9
remove_list=[] #將要移出去的號碼放在該列表中
list_peple=list(range(1,31))#創建1-30編號
r_sum=0 #移出去的人數
while r_sum<remove_sum:
r_num=1 #訪問到第幾個人
while r_num<remove_num:
first=list_peple.pop(0) #將列表的第一個元素刪除並返回刪除的元素
list_peple.append(first) #把刪除的元素放在列表的最後
r_num=r_num+1
first=list_peple.pop(0)
remove_list.append(first)#第9個,把刪除的元素放在remove_list列表的最後
r_sum+=1
結果:
list_peple
[25, 28, 29, 1, 2, 3, 4, 10, 11, 13, 14, 15, 17, 20, 21]
remove_list
[9, 18, 27, 6, 16, 26, 7, 19, 30, 12, 24, 8, 22, 5, 23]