Submission #176831


Source Code Expand

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

public class Main {

    static int SE[][];
    static int ansSE[][];
    static int N;
    static int ans;

    public static void main(String[] args) {

	readInput();
	Arrays.sort(SE, new MyComparator());
	round(SE);
	ans = merge(SE, ansSE);

	dump(ansSE, ans);
    }

    private static void readInput() {

	Scanner sc = new Scanner(System.in);
	N = sc.nextInt();
	SE = new int[N][2];
	ansSE = new int[N][2];

	String temp[] = new String[2];
	for (int i = 0; i < N; i++) {
	    temp = (sc.next()).split("-");
	    SE[i][0] = Integer.parseInt(temp[0]);
	    SE[i][1] = Integer.parseInt(temp[1]);
	}
    }
    
    private static void round(int[][] SE) {
	int s, e;
	for (int i = 0; i < SE.length; i++) {
	    s = SE[i][0]; e = SE[i][1];
	    s = s - (s % 5);
	    if ((e % 5) != 0) e = e + (5 - e % 5);
	    if ((e % 100) == 60) {
		e = e + 40;
	    }
	    SE[i][0] = s;
	    SE[i][1] = e;
	}
    }

    private static int merge(int[][] SE, int[][] ansSE) {

	int srt = SE[0][0];
	int end = SE[0][1];
	int index = 0;

	for (int i = 1; i < SE.length; i++) {

	    if (SE[i][0] <= end) {
		if (SE[i][1] > end) {
		    end = SE[i][1];
		}
	    } else {
		ansSE[index][0] = srt;
		ansSE[index][1] = end;
		srt = SE[i][0];
		end = SE[i][1];
		index++;
	    }
	}
	ansSE[index][0] = srt;
	ansSE[index][1] = end;
	return index+1;
    }

    private static void dump(int[][] se, int n) {
	for (int i = 0; i < n; i++) {
	    for (int j = 0; j < 2; j++) {
		if (se[i][j] < 10) {
		    System.out.print("0");
		}
		if (se[i][j] < 100) {
		    System.out.print("0");
		}
		if (se[i][j] < 1000) {
		    System.out.print("0");
		}
		System.out.print(se[i][j]);
		if (j == 0) System.out.print("-");
	    }
	    System.out.println("");
	}
    }

    private static class MyComparator implements Comparator<Object> {

	@Override
	public int compare(Object o1, Object o2) {
	    int s1 = ((int[])o1)[0];
	    int s2 = ((int[])o2)[0];
	    return s1 - s2;
	}
    }
}

Submission Info

Submission Time
Task D - 感雨時刻の整理
User fukumy
Language Java (OpenJDK 1.7.0)
Score 100
Code Size 2132 Byte
Status AC
Exec Time 1136 ms
Memory 40244 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 464 ms 19852 KB
00_sample_02.txt AC 473 ms 19980 KB
00_sample_03.txt AC 472 ms 19940 KB
cho_cho_chokudai.txt AC 991 ms 38032 KB
chokudai_ga_cho.txt AC 960 ms 36876 KB
test_01.txt AC 622 ms 20064 KB
test_02.txt AC 478 ms 20108 KB
test_03.txt AC 492 ms 20212 KB
test_04.txt AC 489 ms 20048 KB
test_05.txt AC 491 ms 20088 KB
test_06.txt AC 499 ms 20580 KB
test_07.txt AC 475 ms 20136 KB
test_08.txt AC 468 ms 19980 KB
test_09.txt AC 537 ms 21368 KB
test_10.txt AC 549 ms 22204 KB
test_11.txt AC 528 ms 21200 KB
test_12.txt AC 492 ms 20876 KB
test_13.txt AC 472 ms 20124 KB
test_14.txt AC 551 ms 21212 KB
test_15.txt AC 514 ms 21292 KB
test_16.txt AC 480 ms 20100 KB
test_17.txt AC 548 ms 21232 KB
test_18.txt AC 479 ms 20148 KB
test_19.txt AC 512 ms 20976 KB
test_20.txt AC 526 ms 21116 KB
test_21.txt AC 1026 ms 39292 KB
test_22.txt AC 990 ms 39660 KB
test_23.txt AC 994 ms 38300 KB
test_24.txt AC 944 ms 38288 KB
test_25.txt AC 1004 ms 38828 KB
test_26.txt AC 1046 ms 39240 KB
test_27.txt AC 987 ms 37652 KB
test_28.txt AC 1136 ms 40244 KB
test_29.txt AC 464 ms 19912 KB
test_30.txt AC 478 ms 20008 KB
test_31.txt AC 698 ms 25756 KB
test_32.txt AC 468 ms 19988 KB
test_33.txt AC 947 ms 37528 KB
test_34.txt AC 460 ms 19932 KB
test_35.txt AC 499 ms 20916 KB
test_36.txt AC 1104 ms 39496 KB
test_37.txt AC 1070 ms 38744 KB
test_38.txt AC 1069 ms 39928 KB
test_39.txt AC 1019 ms 39344 KB
test_40.txt AC 1063 ms 38552 KB
test_41.txt AC 889 ms 36480 KB
test_42.txt AC 963 ms 38068 KB
test_43.txt AC 932 ms 36680 KB