博客主页:@花无缺
欢迎 点赞 收藏⭐ 留言 加关注✅!
本文由 花无缺 原创收录于专栏 【洛谷算法题】
题目链接:小鱼的游泳时间 - 洛谷
伦敦奥运会要到了,小鱼在拼命练习游泳准备参加游泳比赛,可怜的小鱼并不知道鱼类是不能参加人类的奥运会的。
这一天,小鱼给自己的游泳时间做了精确的计时(本题中的计时都按 24 24 24 小时制计算),它发现自己从 a a a 时 b b b 分一直游泳到当天的 c c c 时 d d d 分,请你帮小鱼计算一下,它这天一共游了多少时间呢?
小鱼游的好辛苦呀,你可不要算错了哦。
一行内输入四个整数,以空格隔开,分别表示题目中的 a , b , c , d a, b, c, d a,b,c,d。
一行内输出两个整数 e e e 和 f f f,用空格间隔,依次表示小鱼这天一共游了多少小时多少分钟。其中表示分钟的整数 f f f 应该小于 60 60 60。
12 50 19 10
6 20
对于全部测试数据, 0 ≤ a , c ≤ 24 0\le a,c \le 24 0≤a,c≤24, 0 ≤ b , d ≤ 60 0\le b,d \le 60 0≤b,d≤60,且结束时间一定晚于开始时间。
题解一:
import java.util.Scanner;
public class P1425 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt(), b = in.nextInt(), c = in.nextInt(), d = in.nextInt();
// 将两个时间点内的时间差转换为分钟数, 然后再得出小时和分钟数
int e = ((c - a) * 60 - b + d) / 60;
int f = ((c - a) * 60 - b + d) % 60;
System.out.print(e + " " + f);
in.close();
}
}
题解二:
import java.util.Scanner;
public class P1452 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt(), b = in.nextInt(), c = in.nextInt(), d = in.nextInt();
// 小时
int x = c - a;
// 分钟
int y = d - b;
// 如果分钟数为负数, 则小时加1,分钟等于 y 加 60
if(y < 0) {
x--;
y = y + 60;
}
System.out.println(x + " " + y);
in.close();
}
}
这个题思路很简单,一般来说有两种做法:
作者:花无缺(huawuque404.com)
欢迎
关注
我的博客:花无缺-每一个不曾起舞的日子都是对生命的辜负~
一起进步-刷题专栏:【洛谷算法题】
Java题解同步仓库:https://github.com/huawuque404/Java-solution
往期精彩好文:
【CSS选择器全解指南】
【HTML万字详解】
你们的点赞 收藏⭐ 留言 关注✅
是我持续创作,输出优质内容
的最大动力!
谢谢!