AtCoder Beginner Contest 001

Submission #679454

Source codeソースコード

def input():
    return map(int, raw_input().split('-'))


def round_after_5(t):
    residue = t % 10
    if residue == 0 or residue == 5:
        # 1140, 1145 => 1140, 1145
        return t
    elif residue < 5:
        # 1141, 1144 => 1145, 1145
        return t + 5 - residue
    else:
        # 1148, 1159 => 1150, 1200
        rounded = t + 10 - residue
        residue = rounded % 100
        if residue <= 55:
            return rounded
        else:
            return rounded + 40


def round_before_5(t):
    residue = t % 10
    if residue < 5:
        return t - residue
    else:
        return t + 5 - residue


def generate_index_5(t):
    hour = t / 100
    minute = t - hour * 100
    return 12 * hour + minute / 5


def generate_time_from_index_5(index):
    hour = index / 12
    minute = (index - hour * 12) * 5
    return hour * 100 + minute


def round_time(t, func):
    return func(t)

howmany = int(raw_input())
imosu = [0] * (12 * 24 + 1)
for _ in range(howmany):
    start, end = input()
    imosu[generate_index_5(round_time(start, round_before_5))] += 1
    imosu[generate_index_5(round_time(end, round_after_5))] += -1
answer = []
cumsum_pre = 0
cumsum = 0
for i, num in enumerate(imosu):
    cumsum += num
    if not cumsum == cumsum_pre and (cumsum_pre == 0 or cumsum == 0):
        answer.append('{0:04d}'.format(generate_time_from_index_5(i)))
    cumsum_pre = cumsum

for start, end in zip(answer[::2], answer[1::2]):
    print(start + '-' + end)

Submission

Task問題 D - 感雨時刻の整理
User nameユーザ名 nutszebra
Created time投稿日時
Language言語 Python (2.7.3)
Status状態 AC
Score得点 100
Source lengthソースコード長 1544 Byte
File nameファイル名
Exec time実行時間 294 ms
Memory usageメモリ使用量 4276 KB

Test case

Set

Set name Score得点 / Max score Cases
all 100 / 100 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

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
00_sample_01.txt AC 55 ms 3368 KB
00_sample_02.txt AC 55 ms 3380 KB
00_sample_03.txt AC 54 ms 3328 KB
cho_cho_chokudai.txt AC 291 ms 4264 KB
chokudai_ga_cho.txt AC 286 ms 4268 KB
test_01.txt AC 55 ms 3376 KB
test_02.txt AC 57 ms 3376 KB
test_03.txt AC 56 ms 3380 KB
test_04.txt AC 57 ms 3308 KB
test_05.txt AC 56 ms 3384 KB
test_06.txt AC 54 ms 3384 KB
test_07.txt AC 58 ms 3324 KB
test_08.txt AC 55 ms 3368 KB
test_09.txt AC 59 ms 3380 KB
test_10.txt AC 60 ms 3384 KB
test_11.txt AC 58 ms 3372 KB
test_12.txt AC 57 ms 3376 KB
test_13.txt AC 55 ms 3352 KB
test_14.txt AC 59 ms 3384 KB
test_15.txt AC 58 ms 3376 KB
test_16.txt AC 55 ms 3380 KB
test_17.txt AC 61 ms 3372 KB
test_18.txt AC 57 ms 3380 KB
test_19.txt AC 58 ms 3372 KB
test_20.txt AC 58 ms 3380 KB
test_21.txt AC 286 ms 4276 KB
test_22.txt AC 286 ms 4268 KB
test_23.txt AC 294 ms 4264 KB
test_24.txt AC 286 ms 4268 KB
test_25.txt AC 283 ms 4268 KB
test_26.txt AC 283 ms 4268 KB
test_27.txt AC 281 ms 4268 KB
test_28.txt AC 283 ms 4272 KB
test_29.txt AC 54 ms 3372 KB
test_30.txt AC 55 ms 3376 KB
test_31.txt AC 87 ms 3504 KB
test_32.txt AC 56 ms 3376 KB
test_33.txt AC 207 ms 4012 KB
test_34.txt AC 54 ms 3372 KB
test_35.txt AC 56 ms 3380 KB
test_36.txt AC 290 ms 4268 KB
test_37.txt AC 276 ms 4264 KB
test_38.txt AC 288 ms 4264 KB
test_39.txt AC 282 ms 4268 KB
test_40.txt AC 274 ms 4268 KB
test_41.txt AC 275 ms 4264 KB
test_42.txt AC 272 ms 4268 KB
test_43.txt AC 273 ms 4260 KB