• 华为上机:实现两个合法时间相加


    实现两个合法时间相加
    描述:

    给定两个合法的时间(格式固定:hh:mm:ss,时间合法,不用考虑其它情况),输入两个时间相加后的结果;注意,相加后的结果也必需是一个合法的时间;
    附合法时间定义:小时在[00-23]之间,分钟和秒分别是在[00-59]之间;

    运行时间限制: 无限制
    内存限制: 无限制
    输入:

    时分秒格式的时间字符串,如00:00:00

    输出:

    时分秒格式的时间字符串,如00:00:00

     

    样例输入:
    00:00:00 00:00:01
    
    样例输出:
    00:00:01
    
    答案提示:

    建议将时间转换为秒数计算

    直接计算

    进位要注意

    import java.util.*;
    
    public class Main7{
        public static void main(String[] args){
            Scanner in = new Scanner(System.in);
            while(in.hasNext()){
                String[] strArr = in.nextLine().split(" ");
                int[] a = strToArr(strArr[0]);
                int[] b = strToArr(strArr[1]);
                String add = addTime(a,b);
                System.out.println(add);
            }
            
            in.close();
        }
        public static int[] strToArr(String str){
            String[] strA = str.split(":");
            int[] a = new int[strA.length];
            for(int i=0;i<strA.length;i++){
                a[i] = Integer.parseInt(strA[i]);
            }
            return a;
        }
        public static String addTime(int[] a,int[] b ){
            int sum = 0;
            String str="";
            sum += a[2] + b[2]; //
            
            str = (sum%60<=9?("0"+sum%60): (sum%60) )+"";
            sum=sum/60;
            sum += a[1] + b[1]; //
            str = (sum%60<=9?("0"+sum%60): (sum%60) )+":"+str;
            sum=sum/60;
            sum += a[0] + b[0]; //
            
            str = (sum%24<=9?("0"+sum%24): (sum%24) )+":"+str;
            sum =sum/24;
            return str;
        }
    }
  • 相关阅读:
    系统分析与设计——作业9
    系统分析与设计——作业8
    系统分析与设计——作业7
    系统分析与设计——作业6
    系统分析与设计——作业5
    系统分析与设计——作业4
    从循环添加事件谈起对JS闭包的理解
    对JS prototype的理解
    系统分析与设计——作业2
    JavaScript 预编译(变量提升和函数提升的原理)
  • 原文地址:https://www.cnblogs.com/bbbblog/p/5707977.html
Copyright © 2020-2023  润新知