迴圈鍊錶(不敢死隊問題)

2021-09-02 02:15:10 字數 866 閱讀 2961

**不敢死隊問題**
problem description

有m個敢死隊員要炸掉敵人的乙個碉堡,誰都不想去,排長決定用輪迴數數的辦法來決定哪個戰士去執行任務。如果前乙個戰士沒完成任務,則要再派乙個戰士上去。現給每個戰士編乙個號,大家圍坐成一圈,隨便從某乙個戰士開始計數,當數到5時,對應的戰士就去執行任務,且此戰士不再參加下一輪計數。如果此戰士沒完成任務,再從下乙個戰士開始數數,被數到第5時,此戰士接著去執行任務。以此類推,直到任務完成為止。

這題本來就叫「敢死隊」。「誰都不想去」,就這一句我覺得這個問題也只能叫「不敢死隊問題」。今天大家就要完成這道不敢死隊問題。我們假設排長是1號,按照上面介紹,從一號開始數,數到5的那名戰士去執行任務,那麼排長是第幾個去執行任務的?

input

輸入包括多試資料,每行乙個整數m(0<=m<=10000)(敢死隊人數),若m==0,輸入結束,不做處理。

output

輸出乙個整數n,代表排長是第n個去執行任務。

sample input9

6223

0sample output2

6132

#include#includestruct node//建結點

;struct node *create(int m)//順序建迴圈鍊錶

tail->next=head;//指向頭結點

return head;

};int sel(struct node *head,int m)

else q=p;

}}int main()

return 0;

}

不敢死隊問題 (迴圈鍊錶)

time limit 1000ms memory limit 65536k 有m個敢死隊員要炸掉敵人的乙個碉堡,誰都不想去,排長決定用輪迴數數的辦法來決定哪個戰士去執行任務。如果前乙個戰士沒完成任務,則要再派乙個戰士上去。現給每個戰士編乙個號,大家圍坐成一圈,隨便從某乙個戰士開始計數,當數到5時,對...

鍊錶 不敢死隊

description 有m個敢死隊員要炸掉敵人的乙個碉堡,誰都不想去,排長決定用輪迴數數的辦法來決定哪個戰士去執行任務。如果前乙個戰士沒完成任務,則要再派乙個戰士上去。現給每個戰士編乙個號,大家圍坐成一圈,隨便從某乙個戰士開始計數,當數到5時,對應的戰士就去執行任務,且此戰士不再參加下一輪計數。如...

SDUT OJ 不敢死隊問題 鍊錶

time limit 1000ms memory limit 65536k 有m個敢死隊員要炸掉敵人的乙個碉堡,誰都不想去,排長決定用輪迴數數的辦法來決定哪個戰士去執行任務。如果前乙個戰士沒完成任務,則要再派乙個戰士上去。現給每個戰士編乙個號,大家圍坐成一圈,隨便從某乙個戰士開始計數,當數到5時,對...