2016藍橋杯假期任務之《比酒量》
阿新 • • 發佈:2019-02-10
有一群海盜(不多於20人),在船上比拼酒量。過程如下:開啟一瓶酒,所有在場的人平分喝下,有幾個人倒下了。再開啟一瓶酒平分,又有倒下的,再次重複...... 直到開了第4瓶酒,坐著的已經所剩無幾,海盜船長也在其中。當第4瓶酒平分喝下後,大家都倒下了。
等船長醒來,發現海盜船擱淺了。他在航海日誌中寫到:“......昨天,我正好喝了一瓶.......奉勸大家,開船不喝酒,喝酒別開船......”
請你根據這些資訊,推斷開始有多少人,每一輪喝下來還剩多少人。
如果有多個可能的答案,請列出所有答案,每個答案佔一行。
格式是:人數,人數,...
例如,有一種可能是:20,5,4,2,0
答案寫在“解答.txt”中,不要寫在這裡!
程式碼如下:
import java.util.Scanner; public class Main { public static void main(String[] args) { // Scanner input=new Scanner(System.in); int person[]=new int [5]; for (person[1]=1; person[1]<=20; person[1]++){ for (person[2]=1;person[2]<person[1];person[2]++){ for (person[3]=1;person[3]<person[2];person[3]++){ for (person[4]=1;person[4]<person[3];person[4]++) { if ((1.0)/person[1]+(1.0)/person[2]+(1.0)/person[3]+(1.0)/person[4]==1) { for (int i=1;i<=4;i++) { System.out.print(person[i]); if (i==4) { System.out.println(",0"); } else System.out.print(","); } } } } } } } }
執行結果:
12,6,4,2,0
15,10,3,2,0
18,9,3,2,0
20,5,4,2,0