海盗喝啤酒问题Java解法
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解法相关推荐
- LeetCode 1195. Fizz Buzz Multithreaded--并发系列题目--Java 解法--AtomicInteger/CountDownLatch/CyclicBarrier
题目地址:Fizz Buzz Multithreaded - LeetCode Write a program that outputs the string representation of nu ...
- LeetCode1117. Building H2O --Java解法--多线程保证执行顺序--AtomicInteger
此文首发于我的个人博客:LeetCode 1117. Building H2O --Java解法–多线程保证执行顺序–AtomicInteger - zhang0peter的个人博客 LeetCode ...
- LeetCode 1115. Print FooBar Alternately--多线程并发问题--Java解法--CyclicBarrier, synchronized, Semaphore 信号量
此文首发于我的个人博客:zhang0peter的个人博客 LeetCode题解专栏:LeetCode题解 LeetCode 所有题目总结:LeetCode 所有题目总结 题目地址:Print FooB ...
- 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 ...
- LeetCode 929 Unique Email Addresses--python一行解法,Java解法
题目地址:Unique Email Addresses - LeetCode Every email consists of a local name and a domain name, separ ...
- LeetCode 804 Unique Morse Code Words--python,java解法
题目地址:Unique Morse Code Words - LeetCode Difficulty:easy Acceptance:74.1% International Morse Code de ...
- java 旅行家的预算_洛谷 P1016 旅行家的预算 Java解法
洛谷 P1016 旅行家的预算 Java解法 洛谷 P1016 旅行家的预算 Java解法 package com.two; import java.util.Scanner; public clas ...
- 洛谷P1433 吃奶酪--Java解法(货郎担问题)
洛谷P1433 吃奶酪–Java解法(货郎担问题) 题目链接 解决思想 本题目是一个典型的货郎担问题,即从(0,0)点出发,所有点仅经过依次(我们可以用反证法证明如果有一个点经过两次其路径一定比每个点 ...
- 回文数(Java解法)
回文数(Java解法) 给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数. 例如,121 是回文 ...
最新文章
- Linux下搭建DNS服务器
- 使用OpenCV的ANN_MLP神经网络实现数字识别
- 集美大学诚毅学院计算机科学与技术学费,集美大学诚毅学院计算机科学与技术...
- hibernate ——联合主键
- cassandra 入门_Apache Cassandra和Java入门(第二部分)
- linux-tar命令详解
- sourceforge加速下载_CentOS 7下使用mwget加速wget
- MyBatis中![CDATA[ ]]的使用
- android 录像 源代码,android安卓视频录制摄像拍摄源码(测试可用)
- 【z变换】3. 逆z变换
- 美电信运营商推云计算业务
- 跨省游恢复,首旅如家发布暑期16座旅游目的地城市攻略
- 台当局死磕美国Uber
- mysql登录其他电脑_如何连接另一台电脑的mysql数据库
- 如何在 Excel 中锁定受保护工作表的特定区域?
- Hu矩的形状特征提取---matlab实现
- 312、519、122三大崩盘实战复盘
- 基因序列的保守性分值
- 南京大学计算机学硕分数线,有谁知道南京大学这几年计算机研究生的分数线呀...
- 软件测试 -- 进阶 11 手工测试与自动化测试
热门文章
- tp6中的助手函数是什么意思?
- 微信企业付款 ”错误码:NO_AUTH,错误信息:此IP地址不允许调用接口,如有需要请登录微信支付商户平台更改配置“报错的处理办法
- 积分学在计算机行业的应用,浅谈积分激励在计算机项目教学中的应用.doc
- [ESP8266]刷MQTT固件以及连接服务器失败的问题解决
- 对一些内存名词术语的解释(bank ECC等)——转载
- 2048网页版游戏高分插件代码分享
- Java反射的基本理解
- 快速学习html、css的经典笔记
- 电路基本原理那些事儿之 能量守恒定律
- 华为java工程师面试题,Java开发入门教程