N人圍桌問題

2021-09-02 22:15:35 字數 938 閱讀 8445

今天天氣挺好(不用加班),找出我的演算法書,看上幾頁,覺得這個問題挺好玩,隨手記一下。

/**

* 約瑟夫環問題, n人圍桌問題,第m個人離開,直到最後乙個人的時候結束

* @author administrator@2023年12月9日 下午4:14:45

*/public class josephus

public listnode()

}/**

* * @param head 傳入鍊錶的第乙個節點

* @param n 總共n個人

* @param m 第m個人離開

* @return

* @author administrator@2023年12月9日 下午4:30:11

*/public listnode josephusproblem(listnode head, int n, int m)

system.out.println("現在請第" + head.next.value + "位置的會員離開");

head.next = head.next.next;

head = head.next;

system.out.println("現在從第" + head.value + "個會員開始數");

} return head; }

@test

public void test()

} nodes[nodes.length - 1].next = nodes[0];

listnode josephusproblem = josephusproblem(nodes[0], 6, 3);

system.out.println("最後的贏家是 在第 " + josephusproblem.value + "位置上的會員。");

}}

騰訊筆試 n人組隊問題

某部門共有n nn個人,現在需要從所有人中選出任意數量 大於0 的人組成乙個小隊,並從中選出乙個隊長,那麼一共有多少種組隊方式?其中1 n 109 1 n 10 9 1 n 10 9,由於組隊方式的數目可能會很大,請將結果對 10 9 7 10 9 7 109 7 取餘後輸出。輸入 2 輸出 4 如...

n人圍成一圈報數問題

題目 有n個人圍成一圈,順序排號。從第乙個人開始報數 從1到3報數 凡報到3的人退出圈子,問最後留下的是原來第幾號的那位。思路 假如是8人,則需要乙個陣列將8個人的從1到8依次記下每人位數,還需要乙個模擬報數口令的變數該變數最初為0,從1到2在到3,當該變數為3時,此時對應編號的人就要退出 那麼第一...

N皇后問題

include define maxqueens 20 define minqueens 4 enum bool typedef struct queendata queendata queendata queens maxqueens 1 int ncount init int init chec...