結果

問題 No.70 睡眠の重要性!
ユーザー SagTokiSagToki
提出日時 2018-05-15 14:29:26
言語 Java21
(openjdk 21)
結果
AC  
実行時間 132 ms / 5,000 ms
コード長 2,419 bytes
コンパイル時間 4,993 ms
コンパイル使用メモリ 74,220 KB
実行使用メモリ 55,844 KB
最終ジャッジ日時 2023-09-10 21:01:06
合計ジャッジ時間 6,475 ms
ジャッジサーバーID
(参考情報)
judge11 / judge13
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 127 ms
55,844 KB
testcase_01 AC 128 ms
55,696 KB
testcase_02 AC 129 ms
55,776 KB
testcase_03 AC 132 ms
55,656 KB
testcase_04 AC 131 ms
55,392 KB
testcase_05 AC 127 ms
55,612 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.Scanner;
import java.util.InputMismatchException;

public class ImportanceOfSleeping {
    public static void main(String[] args){
        try{
            Scanner scanner = new Scanner(System.in);
            
            int N = scanner.nextInt();
            if(N < 1 || N > 30){
                System.out.println("Nは1以上30以下の数字で入力してください");
                System.exit(0);
            }
            int Result = 0;
         
            
            for(int i = 0 ; i <N ; i++){ 

                String Sleep = scanner.next();
                String GetUp = scanner.next();

                String[] NewH = Sleep.split(":");
                String[] NewM = GetUp.split(":");

                int H1 = Integer.parseInt(NewH[0]);
                int M1 = Integer.parseInt(NewH[1]);
                int H2 = Integer.parseInt(NewM[0]);
                int M2 = Integer.parseInt(NewM[1]);

                //入力されたものが正しいか確認
                if(H1 < 0 || H1 >23){
                    System.out.println("Hは1以上23以下の数字で入力してください");
                }
                if(H2 < 0 || H2 > 23){
                    System.out.println("hは1以上23以下の数字で入力してください");
                }
                if(M1 < 0 || M1 >60){
                    System.out.println("Mは1以上60位以下の数字で入力してください");
                }
                if(M2 < 0 || M2 > 60){
                    System.out.println("mは1以上60以下の数字で入力してください");
                }

                //分に着目して時間を取る
                if(M1 > M2){
                    Result += (60 + M2) - M1;
                    H2--;
                }else{
                    Result += M2 - M1;
                }
                //時間に着目して時間をとる
                if(H1 > H2){
                    Result += ((24 + H2) - H1) * 60;
                }else{
                    Result += (H2 - H1) * 60;
           
                }
            }    
            //結果を出力
            System.out.println(Result);
            
        }catch(InputMismatchException e){
            System.out.println("数字を入力してください");
        }catch(Exception E){
            System.out.println("予期せぬエラーです");
        }  
    }
}
0