Java 时间相减算法题解示例
作者:Aada
这篇文章主要为大家介绍了Java 时间相减算法题解示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
题目描述
你是个贪睡虫,有一天被老师逮个正着,这个老师很有意思,提出一个问题:“给定入睡时刻和起床时刻,计算一共睡了多长时间”,如果回答正确就可以免于处罚。入睡时刻和起床时刻都采用24小时制表示法(见备注),而且知道睡觉时间最少为1秒,最多为24小时。
输入
【输入格式】
输入第一行描述入睡时刻,第二行描述起床时刻,两个时刻都是采用“HH MM SS”,其中“HH”表示时,范围为0到23,“MM”表示分,范围为0到59,“SS”描述秒,范围为0到59。
输出
【输出格式】
输出一共睡了多长时间。格式同输入一样。
【输入输出样例1】
slpee.in slpeee.out
20 0 0 8 0 0
4 0 0
【输入输出样例2】
slpee.in slpee.out
12 34 56 2 1 26
14 36 2
【备注】
24小时制,是一种时间的表示方法。以区别于12小时制。
在24小时制中,下午1点被写成13点,下午2点被写作14点。
尽管,在生活中,我们使用更多的是12小时制。比如我们说,下午5点下班。我们说的,“朝9晚5”是指的是,上午9点和下午5点(普通职员上下班的时间)。但在科学严谨的说明中,在合同等法律文书中,时间要写成24小时制。
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner xh=new Scanner(System.in); int HH=xh.nextInt(); int MM=xh.nextInt(); int SS=xh.nextInt(); int hh=xh.nextInt(); int mm=xh.nextInt(); int ss=xh.nextInt(); int sum1=0,sum2=0,sum=0; int h,m,s; sum1=HH*3600+MM*60+SS; sum2=hh*3600+mm*60+ss; if(sum1<sum2){ sum=sum2-sum1; h=sum/3600; m=sum%3600/60; s=sum%60; System.out.println(h+" "+m+" "+s); }else{ sum=sum2+24*3600-sum1;//当sum2小于sum1的时候,就来了一个轮回,就是另一天加24*3600秒; h=sum/3600; m=sum%3600/60; s=sum%60; System.out.println(h+" "+m+" "+s); } } }
样例输入
12 34 56
14 36 22
样例输出
2 1 26
提示
请注意:睡眠时间最少为1秒,最多为24小时~
以上就是Java 时间相减算法题解示例的详细内容,更多关于Java 时间相减算法的资料请关注脚本之家其它相关文章!