牛の目覚まし時計(java)

1384 ワード

1.牛はいつも寝坊しているので、目覚まし時計をたくさん注文しました.目覚まし時計が鳴ったときだけ目が覚めて起きないことにしました.彼が起きてから彼はX分で教室に着く必要があります.授業時間は当日のA時B分です.彼が遅くても何時に起きて入力することができますか.入力ごとにテスト例が含まれています.各試験例の第1行は、目覚まし時計の数N(N<=100)を表す正の整数を含む.次のN行は、この目覚まし時計が鳴る時間がHi(0<=A<24)のときMi(0<=B<60)分であることを示す2つの整数を含む.次の行には、起きてからX(0<=X<=100)分で教室に着く必要があることを示す整数が含まれています.次の行は、授業時間がA(0<=A<24)のときB(0<=B<60)分であることを示す2つの整数を含む.データは少なくとも1つの目覚まし時計が牛を教室にタイムリーに到着させることを保証している.出力説明:牛が最も遅く起きる時間を表す2つの整数を出力します.例1入力3 5 0 6 0 7 0 59 6 59出力6 0 2.構想:第一歩:時間を分にして、配列に追加して、第二歩:配列を遍歴して、遍歴する同時に以下のいくつかのステップに分けます:1.現在の時間に遅刻するかどうかを判断する、つまり残り時間=(登校時間-道のり-目覚まし時計)0未満なら遅刻するに違いない.ゼロより大きい場合は、残りの時間が最も小さい(0に等しい)iの位置をmin a[min]に割り当てるのが最も遅い目覚まし時計です.分/60で得たのは時間分%60で得たのは残りの分です.参考:Nixoリンク:https://www.nowcoder.com/questionTerminal/9173e83d1774462f81255a26feafd7c6?f=discussion出典:牛客網3.コード:
import java.util.Scanner;

public class AlarmNixo {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int N=sc.nextInt();
        int[] alarmTime=new int[N];
        int hour=0;
        int mintune=0;
        for (int i = 0; i