Submission #14129916


Source Code Expand

N = gets.to_i
棚 = N.times.map{
	gets.split.map(&:to_i)
}
棚.each(&:shift)

手前にあるもの = [[],[]]
どこの棚? = {}
(0...N).each{|棚番号|
	[0,1].each{|i|
		next unless 期限 = 棚[棚番号][i]
		手前にあるもの[i] << 期限
		どこの棚?[期限] = 棚番号
	}
}
手前にあるもの.map!{|a| a.sort_by{|_|-_} }

gets
gets.split.map(&:to_i).each{|a|
	b = a == 1 ? 0 : [0,1].max_by{|_| 手前にあるもの[_][0]||0 }
	puts 期限 = 手前にあるもの[b][0]

	手前にあるもの[b].delete_at 手前にあるもの[b].bsearch_index{|_|_<=期限}
	棚番号 = どこの棚?.delete 期限
	棚[棚番号].delete_at b
	if b == 0
		if 期限 = 棚[棚番号][0]
			手前にあるもの[0].insert (手前にあるもの[0].bsearch_index{|_|_<期限}||手前にあるもの[0].size),期限
			手前にあるもの[1].delete_at 手前にあるもの[1].bsearch_index{|_|_<=期限}
		end
	end
	if 期限 = 棚[棚番号][1]
		手前にあるもの[1].insert (手前にあるもの[1].bsearch_index{|_|_<期限}||手前にあるもの[1].size),期限
		どこの棚?[期限] = 棚番号
	end
}

Submission Info

Submission Time
Task L - Supamarket
User ds14050
Language Ruby (2.7.1)
Score 0
Code Size 1163 Byte
Status TLE
Exec Time 4272 ms
Memory 61804 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 6
Status
AC × 2
AC × 16
TLE × 2
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All max_01.txt, max_02.txt, max_03.txt, max_04.txt, max_05.txt, max_06.txt, max_07.txt, max_08.txt, max_09.txt, max_10.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
max_01.txt TLE 4250 ms 61208 KiB
max_02.txt TLE 4272 ms 61804 KiB
max_03.txt AC 2800 ms 42800 KiB
max_04.txt AC 1009 ms 43648 KiB
max_05.txt AC 972 ms 43492 KiB
max_06.txt AC 896 ms 39496 KiB
max_07.txt AC 935 ms 43352 KiB
max_08.txt AC 1287 ms 44936 KiB
max_09.txt AC 1482 ms 41884 KiB
max_10.txt AC 2023 ms 47112 KiB
random_01.txt AC 699 ms 22872 KiB
random_02.txt AC 350 ms 21772 KiB
random_03.txt AC 710 ms 29612 KiB
random_04.txt AC 208 ms 19444 KiB
random_05.txt AC 212 ms 24008 KiB
random_06.txt AC 194 ms 18312 KiB
sample_01.txt AC 52 ms 14384 KiB
sample_02.txt AC 51 ms 14552 KiB