AtCoder Beginner Contest 001

Submission #348182

Source codeソースコード

def rounddown(x)
	x - x % 5
end

def roundup(x)
	(x + 4)/5 * 5
end

def to_minutes(x)
	x/100*60 + x%100
end

def to_time(x)
	x/60*100 + x%60
end

def merge(intervals)
	merged = []
	prev = intervals[0]

	for i in 1...intervals.length
		current = intervals[i]

		if prev[1] >= current[0]
			prev = [prev[0], [prev[1], current[1]].max]
		else
			merged << prev
			prev = current
		end
	end

	merged << prev
end

n = gets.to_i
intervals = []

n.times do
	intervals << gets.split('-').map(&:to_i)
end

intervals.each do |interval|
	interval[0] = rounddown(to_minutes(interval[0]))
	interval[1] = roundup(to_minutes(interval[1]))
end

intervals.sort! { |i1, i2| i1[0] <=> i2[0] }
merge(intervals).each do |interval|
	from = to_time(interval[0])
	to = to_time(interval[1])
	puts '%04d-%04d' % [from, to]
end

Submission

Task問題 D - 感雨時刻の整理
User nameユーザ名 kris88
Created time投稿日時
Language言語 Ruby (1.9.3)
Status状態 AC
Score得点 100
Source lengthソースコード長 853 Byte
File nameファイル名
Exec time実行時間 267 ms
Memory usageメモリ使用量 6160 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 46 ms 4116 KB
00_sample_02.txt AC 44 ms 4204 KB
00_sample_03.txt AC 45 ms 4204 KB
cho_cho_chokudai.txt AC 203 ms 6124 KB
chokudai_ga_cho.txt AC 205 ms 6120 KB
test_01.txt AC 47 ms 4204 KB
test_02.txt AC 47 ms 4204 KB
test_03.txt AC 48 ms 4204 KB
test_04.txt AC 45 ms 4204 KB
test_05.txt AC 48 ms 4204 KB
test_06.txt AC 49 ms 4192 KB
test_07.txt AC 49 ms 4200 KB
test_08.txt AC 50 ms 4192 KB
test_09.txt AC 49 ms 4204 KB
test_10.txt AC 50 ms 4248 KB
test_11.txt AC 49 ms 4204 KB
test_12.txt AC 49 ms 4204 KB
test_13.txt AC 49 ms 4204 KB
test_14.txt AC 53 ms 4204 KB
test_15.txt AC 52 ms 4204 KB
test_16.txt AC 45 ms 4200 KB
test_17.txt AC 47 ms 4212 KB
test_18.txt AC 46 ms 4204 KB
test_19.txt AC 48 ms 4200 KB
test_20.txt AC 47 ms 4200 KB
test_21.txt AC 265 ms 6124 KB
test_22.txt AC 267 ms 6124 KB
test_23.txt AC 262 ms 6120 KB
test_24.txt AC 262 ms 6112 KB
test_25.txt AC 264 ms 6124 KB
test_26.txt AC 265 ms 6120 KB
test_27.txt AC 206 ms 6116 KB
test_28.txt AC 249 ms 6160 KB
test_29.txt AC 46 ms 4204 KB
test_30.txt AC 46 ms 4204 KB
test_31.txt AC 75 ms 4456 KB
test_32.txt AC 47 ms 4200 KB
test_33.txt AC 187 ms 5228 KB
test_34.txt AC 46 ms 4204 KB
test_35.txt AC 46 ms 4204 KB
test_36.txt AC 255 ms 6124 KB
test_37.txt AC 260 ms 6124 KB
test_38.txt AC 265 ms 6124 KB
test_39.txt AC 248 ms 6124 KB
test_40.txt AC 245 ms 6124 KB
test_41.txt AC 202 ms 6124 KB
test_42.txt AC 255 ms 6124 KB
test_43.txt AC 205 ms 6124 KB