Submission #5780258


Source Code Expand

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    int N = scanner.nextInt();
    Point[] points = new Point[N * 2];
    for (int i = 0; i < N; i++) {
      String[] line = scanner.next().split("-");
      int s = Integer.parseInt(line[0]);
      int e = Integer.parseInt(line[1]);
      s = s / 5 * 5;
      e = (e + 4) / 5 * 5;
      if (e % 100 == 60) e += 40;
      points[i * 2] = new Point(s, true);
      points[i * 2 + 1] = new Point(e, false);
    }

    Arrays.sort(points, Comparator.comparingInt(p -> p.pos * 2 + (p.start ? 0 : 1)));

    int count = 0;
    int start = -1;
    List<int[]> list = new ArrayList<>();
    for (int i = 0; i < N * 2; i++) {
      if (points[i].start) {
        if (count == 0) start = points[i].pos;
        count++;
      } else {
        count--;
      }
      if (count == 0) {
        list.add(new int[]{start, points[i].pos});
        start = -1;
      }
    }
    for (int[] p : list) System.out.printf("%04d-%04d\n", p[0], p[1]);
  }

  private static class Point {
    private final int pos;
    private final boolean start;

    private Point(int pos, boolean start) {
      this.pos = pos;
      this.start = start;
    }
  }
}

Submission Info

Submission Time
Task D - 感雨時刻の整理
User hkurokawa
Language Java8 (OpenJDK 1.8.0)
Score 100
Code Size 1428 Byte
Status AC
Exec Time 517 ms
Memory 47244 KB

Judge Result

Set Name all
Score / Max Score 100 / 100
Status
AC × 48
Set Name Test Cases
all 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, cho_cho_chokudai.txt, chokudai_ga_cho.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 180 ms 26708 KB
00_sample_02.txt AC 176 ms 25940 KB
00_sample_03.txt AC 181 ms 24660 KB
cho_cho_chokudai.txt AC 425 ms 41208 KB
chokudai_ga_cho.txt AC 424 ms 42796 KB
test_01.txt AC 205 ms 24916 KB
test_02.txt AC 229 ms 26324 KB
test_03.txt AC 220 ms 26708 KB
test_04.txt AC 208 ms 24652 KB
test_05.txt AC 212 ms 24916 KB
test_06.txt AC 193 ms 26196 KB
test_07.txt AC 191 ms 24148 KB
test_08.txt AC 180 ms 27092 KB
test_09.txt AC 241 ms 26060 KB
test_10.txt AC 207 ms 24136 KB
test_11.txt AC 206 ms 24912 KB
test_12.txt AC 192 ms 24788 KB
test_13.txt AC 182 ms 24532 KB
test_14.txt AC 236 ms 25860 KB
test_15.txt AC 259 ms 29360 KB
test_16.txt AC 192 ms 26580 KB
test_17.txt AC 197 ms 24912 KB
test_18.txt AC 191 ms 26060 KB
test_19.txt AC 195 ms 24780 KB
test_20.txt AC 199 ms 26452 KB
test_21.txt AC 478 ms 43216 KB
test_22.txt AC 469 ms 43396 KB
test_23.txt AC 471 ms 41860 KB
test_24.txt AC 501 ms 44604 KB
test_25.txt AC 512 ms 44080 KB
test_26.txt AC 467 ms 45224 KB
test_27.txt AC 423 ms 43528 KB
test_28.txt AC 459 ms 45612 KB
test_29.txt AC 180 ms 25172 KB
test_30.txt AC 195 ms 24660 KB
test_31.txt AC 312 ms 28824 KB
test_32.txt AC 181 ms 29140 KB
test_33.txt AC 444 ms 46120 KB
test_34.txt AC 173 ms 26196 KB
test_35.txt AC 200 ms 24788 KB
test_36.txt AC 517 ms 46984 KB
test_37.txt AC 448 ms 41796 KB
test_38.txt AC 481 ms 47244 KB
test_39.txt AC 514 ms 47236 KB
test_40.txt AC 453 ms 41316 KB
test_41.txt AC 420 ms 47048 KB
test_42.txt AC 456 ms 41188 KB
test_43.txt AC 424 ms 44108 KB