每日一题---蓝桥杯猴子吃包子问题Java解决
2023-03-14 22:43:48 时间
题目
资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同;肉包每秒钟吃x个;韭菜包每秒钟吃y个;没有馅的包子每秒钟吃z个;现在有x1个肉包,y1个韭菜包,z1个没有馅的包子;问:猴子吃完这些包子要多久?结果保留p位小数。
输入格式
输入1行,包含7个整数,分别表示吃不同包子的速度和不同包子的个数和保留的位数。
输出格式
输出一行,包含1个实数,表示吃完所有包子的时间。
样例输入
4 3 2 20 30 15 2
样例输出
22.50
数据规模和约定
0<x<100;0<y<100;0<z<100;0<x1<=1000000;0<y1<=10000000;0<z1<=10000000;0<p<=1000
分析
- 就题上给的这个p的限制范围就大离谱,就算是double精度也就在小数点后六位,所以第一感觉就是这题不能用double做,BigDecima(一般用不到)就很好的解决了这一问题。
- 但BigDecima是没有办法进行“+”“-”“*”“/”运算的,这就需要我们了解它的几个方法和一个技术
- 方法:
- BigDecima两对象相加
add(BigDecimal augend)
返回 BigDecimal ,其值是 (this + augend) ,其标为 max(this.scale(), augend.scale()) 。
- BigDecima两对象相除
divide(BigDecimal divisor)
返回BigDecimal ,其值为(this / divisor) ,优先级为(this.scale() - divisor.scale()) ; 如果不能表示确切的商(因为它具有非终止的十进制扩展),则抛出一个ArithmeticException 。
- BigDecima两对象相除余小数点后scale位,RoundingMode为采用的技术
divide(BigDecimal divisor, int scale, RoundingMode roundingMode)
返回一个 BigDecimal ,其值为 (this / divisor) ,其比例为指定。
- 技术:
- ROUND_HALF_DOWN
四舍五入模式向“最近邻居”转弯,除非这两个邻居都是等距离的,在这种情况下,这是倒圆的。
代码
import java.math.BigDecimal; import java.util.Scanner; /** * @Author: Re * @Date: 2021/2/6 21:37 */ public class Main { private static void chiTao(){ Scanner scanner=new Scanner(System.in); BigDecimal a,b,c,d,e,f,sum; int g; a = scanner.nextBigDecimal(); b = scanner.nextBigDecimal(); c = scanner.nextBigDecimal(); d = scanner.nextBigDecimal(); e = scanner.nextBigDecimal(); f = scanner.nextBigDecimal(); g = scanner.nextInt(); sum = d.divide(a,g,BigDecimal.ROUND_HALF_DOWN).add(e.divide(b,g,BigDecimal.ROUND_HALF_DOWN).add(f.divide(c,g,BigDecimal.ROUND_HALF_DOWN))); System.out.print(sum); } public static void main(String[] args) { chiTao(); } }
相关文章
- 在 Go 里用 CGO?这 7 个问题你要关注!
- 9款优秀的去中心化通讯软件 Matrix 的客户端
- 求职数据分析,项目经验该怎么写
- 在OKR中,我看到了数据驱动业务的未来
- 火山引擎云原生大数据在金融行业的实践
- OpenHarmony富设备移植指南(二)—从postmarketOS获取移植资源
- 《数据成熟度指数》报告:64%的企业领袖认为大多数员工“不懂数据”
- OpenHarmony 小型系统兼容性测试指南
- 肯睿中国(Cloudera):2023年企业数字战略三大趋势预测
- 适用于 Linux 的十大命令行游戏
- GNOME 截图工具的新旧截图方式
- System76 即将推出的 COSMIC 桌面正在酝酿大变化
- 2GB 内存 8GB 存储即可流畅运行,Windows 11 极致精简版系统 Tiny11 发布
- 迎接 ecode:一个即将推出的具有全新图形用户界面框架的现代、轻量级代码编辑器
- loongarch架构介绍(三)—地址翻译
- Go 语言怎么解决编译器错误“err is shadowed during return”?
- 敏捷:可能被开发人员遗忘的部分
- Denodo预测2023年数据管理和分析的未来
- 利用数据推动可持续发展
- 在 Vue3 中实现 React 原生 Hooks(useState、useEffect),深入理解 React Hooks 的