100題 第十八題(約瑟夫迴圈)

2021-08-26 17:23:34 字數 488 閱讀 1033

一,題目:n個數字(0,1,…,n-1)形成乙個圓圈,從數字0開始,每次從這個圓圈中刪除第m個數字(第乙個為當前數字本身,第二個為當前數字的下乙個數字)。當乙個數字刪除後,從被刪除數字的下乙個繼續刪除第m個數字。求出在這個圓圈中剩下的最後乙個數字。

三,原始碼:

#include #include "malloc.h" using namespace std; struct node ; node *createlist(int a,int n) q=head; while(q->next!=null) q=q->next; q->next=head; return head; } void display(node *head) p->next=q->next;//刪除節點 cout<<"delete node is:"

程式設計第十八題

rpg girls今天和大家一起去遊樂場玩,終於可以坐上夢寐以求的過山車了。可是,過山車的每一排只有兩個座位,而且還有條不成文的規矩,就是每個女生必須找個個男生做partner和她同坐。但是,每個女孩都有各自的想法,舉個例子把,rabbit只願意和xhd或pqk做partner,grass只願意和l...

dp專題 第十八題 買書

1 簡單描述 小明手裡有n元錢全部用來買書,書的 為10元,20元,50元,100元。有多少種買書的方案。注意 n元錢必須全部用來買書,每種書的數目不限。2 思路 完全揹包問題 include using namespace std int v 10 int f 1010 i,j,n intmain...

微軟等資料結構與演算法面試100題 第十八題

第十八題 題目 n 個數字 0,1,n 1 形成乙個圓圈,從數字0 開始,每次從這個圓圈中刪除第m 個數字 第乙個為當前數字本身,第二個為當前數字的下乙個數 字 當乙個數字刪除後,從被刪除數字的下乙個繼續刪除第m 個數字。求出在這個圓圈中剩下的最後乙個數字。分析 這道題有很多解法,給出了目前最快的演...