Question:

有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,
所有在场的人平分喝下,有几个人倒下了。再打开一瓶酒平分,又有倒下的,
再次重复…… 直到开了第4瓶酒,坐着的已经所剩无几,海盗船长也在其中。
当第4瓶酒平分喝下后,大家都倒下了。 等船长醒来,发现海盗船搁浅了。
他在航海日志中写到:“……昨天,我正好喝了一瓶…….奉劝大家,开船不喝酒,喝酒别开船……”
请你根据这些信息,推断开始有多少人,每一轮喝下来还剩多少人。
如果有多个可能的答案,请列出所有答案,每个答案占一行。
格式是:人数,人数,…
例如,有一种可能是:20,5,4,2,0*/
先列出正确的代码

Answer:

 1 public class Main{
 2     public static void main(String[] args){
 3         for(int a = 20;a>=1;a--){
 4             for(int b = a-1;b>=1;b--){
 5                 for(int c = b-1;c>=1;c--){
 6                     for(int d = c-1;d>=1;d--){
 7                         if(1.0/a+1.0/b+1.0/c+1.0/d==1.0){
 8                             System.out.println(a+","+b+","+c+","+d+",0");
 9                         }
10                     }
11                 }
12             }
13         }
14     }
15 }

尽量不要用浮点数,出错的几率相对来说还是很大的,可以将其化为整数

1:进行通分

2:扩大相同的倍数

PS:

题目想的不要复杂,对于计算机来说是一件简单的事情,想的那么复杂,,会更加的难解。

转载于:https://www.cnblogs.com/Hrain/p/10569453.html

海盗喝啤酒问题Java解法相关推荐

  1. LeetCode 1195. Fizz Buzz Multithreaded--并发系列题目--Java 解法--AtomicInteger/CountDownLatch/CyclicBarrier

    题目地址:Fizz Buzz Multithreaded - LeetCode Write a program that outputs the string representation of nu ...

  2. LeetCode1117. Building H2O --Java解法--多线程保证执行顺序--AtomicInteger

    此文首发于我的个人博客:LeetCode 1117. Building H2O --Java解法–多线程保证执行顺序–AtomicInteger - zhang0peter的个人博客 LeetCode ...

  3. LeetCode 1115. Print FooBar Alternately--多线程并发问题--Java解法--CyclicBarrier, synchronized, Semaphore 信号量

    此文首发于我的个人博客:zhang0peter的个人博客 LeetCode题解专栏:LeetCode题解 LeetCode 所有题目总结:LeetCode 所有题目总结 题目地址:Print FooB ...

  4. LeetCode 85. Maximal Rectangle --python,java解法

    题目地址: Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing only 1 ...

  5. LeetCode 929 Unique Email Addresses--python一行解法,Java解法

    题目地址:Unique Email Addresses - LeetCode Every email consists of a local name and a domain name, separ ...

  6. LeetCode 804 Unique Morse Code Words--python,java解法

    题目地址:Unique Morse Code Words - LeetCode Difficulty:easy Acceptance:74.1% International Morse Code de ...

  7. java 旅行家的预算_洛谷 P1016 旅行家的预算 Java解法

    洛谷 P1016 旅行家的预算 Java解法 洛谷 P1016 旅行家的预算 Java解法 package com.two; import java.util.Scanner; public clas ...

  8. 洛谷P1433 吃奶酪--Java解法(货郎担问题)

    洛谷P1433 吃奶酪–Java解法(货郎担问题) 题目链接 解决思想 本题目是一个典型的货郎担问题,即从(0,0)点出发,所有点仅经过依次(我们可以用反证法证明如果有一个点经过两次其路径一定比每个点 ...

  9. 回文数(Java解法)

    回文数(Java解法) 给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 例如,121 是回文 ...

最新文章

  1. Linux下搭建DNS服务器
  2. 使用OpenCV的ANN_MLP神经网络实现数字识别
  3. 集美大学诚毅学院计算机科学与技术学费,集美大学诚毅学院计算机科学与技术...
  4. hibernate ——联合主键
  5. cassandra 入门_Apache Cassandra和Java入门(第二部分)
  6. linux-tar命令详解
  7. sourceforge加速下载_CentOS 7下使用mwget加速wget
  8. MyBatis中![CDATA[ ]]的使用
  9. android 录像 源代码,android安卓视频录制摄像拍摄源码(测试可用)
  10. 【z变换】3. 逆z变换
  11. 美电信运营商推云计算业务
  12. 跨省游恢复,首旅如家发布暑期16座旅游目的地城市攻略
  13. 台当局死磕美国Uber
  14. mysql登录其他电脑_如何连接另一台电脑的mysql数据库
  15. 如何在 Excel 中锁定受保护工作表的特定区域?
  16. Hu矩的形状特征提取---matlab实现
  17. 312、519、122三大崩盘实战复盘
  18. 基因序列的保守性分值
  19. 南京大学计算机学硕分数线,有谁知道南京大学这几年计算机研究生的分数线呀...
  20. 软件测试 -- 进阶 11 手工测试与自动化测试

热门文章

  1. tp6中的助手函数是什么意思?
  2. 微信企业付款 ”错误码:NO_AUTH,错误信息:此IP地址不允许调用接口,如有需要请登录微信支付商户平台更改配置“报错的处理办法
  3. 积分学在计算机行业的应用,浅谈积分激励在计算机项目教学中的应用.doc
  4. [ESP8266]刷MQTT固件以及连接服务器失败的问题解决
  5. 对一些内存名词术语的解释(bank ECC等)——转载
  6. 2048网页版游戏高分插件代码分享
  7. Java反射的基本理解
  8. 快速学习html、css的经典笔记
  9. 电路基本原理那些事儿之 能量守恒定律
  10. 华为java工程师面试题,Java开发入门教程