- /**
- * 有一羣海盜(很少於20人),在船上比拼酒量。過程以下:打開一瓶酒,全部在場的人平分喝下,有幾我的倒下了。再打開一瓶酒平分,又有倒下的,再次重複...... 直到開了第4瓶酒,坐着的已經所剩無幾,海盜船長也在其中。當第4瓶酒平分喝下後,你們都倒下了。 等船長醒來,發現海盜船擱淺了。他在航海日誌中寫到:「......昨天,我正好喝了一瓶.......奉勸你們,開船不喝酒,喝酒別開船......」
- 請你根據這些信息,推斷開始有多少人,每一輪喝下來還剩多少人。
- 若是有多個可能的答案,請列出全部答案,每一個答案佔一行。
- 格式是:人數,人數,...
- 例如,有一種多是:20,5,4,2,0
- * @author Administrator
- *
- */
- public class test3 {
- public static void main(String[] args) {
- for (int i = 20; i>3; i--) { //總人數
- for (int j = i-1; j > 2; j--) { //喝完第一瓶酒後剩下的人
- for (int j2 = j-1; j2 >1; j2--) { //喝完第二瓶酒後剩下的人
- for (int k = j2-1; k>0; k--) { //喝完第三瓶酒後剩下的人
- if (((1.0/i)+(1.0/j)+(1.0/j2)+(1.0/k))==1) {
- System.out.print(i+" ,"+j+","+j2+","+k+","+0);
- System.out.println();
- }
- }
- }
- }
- }
- }
- }