题目要求
P5709题目链接
一看,这就是水题啊。。。 问题是,看看这AC-Rate,吓不吓人~~~
所以我们应该去分析这里的坑(当时我也是头铁跪了多次……)
读完题我们可能会想直接去将s/t以后得到答案对吧? 但是“完整的苹果”怎么理解? “完整的苹果”其实是说,苹果可以吃一半,对吧? 比如说10分钟一个苹果,吃了15分钟,那就是1.5个苹果,实际消耗的是2个。假设原来有5个苹果,那就剩下3个完整的。
那就是我们可以用s/t以后取到上整~~(因为要求的是完整的苹果数,所以说剩余的是下整,对应的消耗就是上整)
上整怎么搞? Java有 java.lang.Math类 → (这是我写的博客)
- Math.ceil()是上整
- Math.floor()是下整
我们选Math.ceil(),但返回值是double,我们需要强转为int。 然后呢,是后面痛苦的根源——s/t!!! 我忘记了int/int是直接得到int,截断取整,并没有浮点数…… 难怪我改半天也不知道问题在哪里…… 所以需要做一个细致的操作——将s转为double……
本题测试用例不涉及,但必须注意的一个问题是除0问题,我建议判一下t的0,如果是0就是没消耗,算是打印0吧~~
鉴于本题其实不难,上面也把坑分析了,所以直接上最终代码吧!
第N次提交——ACimport java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int m = scanner.nextInt(), t = scanner.nextInt(), s = scanner.nextInt();
if (t == 0) {
System.out.println(0);
return;
}
int temp = (int) Math.ceil((double)s / t);
m -= temp;
if (m
关注
打赏
热门博文
- 【Linux】Ubuntu20.04安装和卸载MySQL8
- 【Linux】Ubuntu 20.04 报错 curl: (23) Failure writing output to destination 的解决方法
- 【Java】JUnit 4.13.2 警告 ‘assertEquals(double, double)‘ is deprecated 的解决方法
- 【JavaScript】处理 @parcel/transformer-js: Browser scripts cannot have imports or exports.
- 【Python】处理TypeError: Plain typing.NoReturn is not valid as type argument
- 【Python】Matplotlib可视化50例
- 【C语言】C语言修改MySQL数据库
- 【Java】从默认包导入类和对象报错的解决方法
- 【Java】panel.getGraphics()报错空指针异常的解决方法
- 【Java】IDEA编译Java项目报错 java: 找不到符号 的解决方法