Submission #32816278


Source Code Expand

N,_,*A = $<.read.split.map(&:to_i)
A.sort!
C = nil,2,5,5,4,5,6,3,7,6

D,ds = [],[0]+[-1.0/0]*N
A.each{|a|
	c = C[a]
	D<<ds = ds.dup
	c.times{|i0|
		i0.step(N-c,c){|i|
			ds[i+c] = [ds[i+c],ds[i]+1].max
		}
	}
}

z = N
A.zip(D).reverse_each{|a,ds|
	y,c = z,C[a]
	y -= c while c<=y && ds[y-c]+1==ds[y]
	print a.to_s*((z-y)/c)
	z = y
}
puts

Submission Info

Submission Time
Task D - Match Matching
User ds14050
Language Ruby (2.7.1)
Score 400
Code Size 361 Byte
Status AC
Exec Time 71 ms
Memory 15080 KiB

Judge Result

Set Name All Sample
Score / Max Score 400 / 400 0 / 0
Status
AC × 29
AC × 3
Set Name Test Cases
All 0_random_1, 0_random_2, 0_random_3, 0_random_4, 0_random_5, 0_random_6, 0_random_7, 0_random_8, 1_normal_1, 1_normal_2, 1_normal_3, 1_normal_4, 1_normal_5, 1_normal_6, 2_corner_1, 2_corner_2, 2_corner_3, 2_corner_4, 2_corner_5, 2_corner_6, 3_hand_1, 3_hand_2, 3_hand_3, 3_hand_4, 3_hand_5, 3_hand_6, sample_01, sample_02, sample_03
Sample sample_01, sample_02, sample_03
Case Name Status Exec Time Memory
0_random_1 AC 58 ms 14276 KiB
0_random_2 AC 56 ms 14320 KiB
0_random_3 AC 60 ms 14280 KiB
0_random_4 AC 55 ms 14440 KiB
0_random_5 AC 65 ms 14732 KiB
0_random_6 AC 58 ms 14532 KiB
0_random_7 AC 55 ms 14332 KiB
0_random_8 AC 57 ms 14172 KiB
1_normal_1 AC 57 ms 14380 KiB
1_normal_2 AC 63 ms 14656 KiB
1_normal_3 AC 59 ms 14508 KiB
1_normal_4 AC 58 ms 14664 KiB
1_normal_5 AC 53 ms 14512 KiB
1_normal_6 AC 56 ms 14512 KiB
2_corner_1 AC 55 ms 14128 KiB
2_corner_2 AC 57 ms 14212 KiB
2_corner_3 AC 59 ms 14608 KiB
2_corner_4 AC 57 ms 14348 KiB
2_corner_5 AC 57 ms 14200 KiB
2_corner_6 AC 56 ms 14192 KiB
3_hand_1 AC 57 ms 14420 KiB
3_hand_2 AC 54 ms 14064 KiB
3_hand_3 AC 53 ms 14320 KiB
3_hand_4 AC 56 ms 14212 KiB
3_hand_5 AC 54 ms 14196 KiB
3_hand_6 AC 71 ms 15080 KiB
sample_01 AC 57 ms 14104 KiB
sample_02 AC 56 ms 13984 KiB
sample_03 AC 56 ms 14276 KiB