blob: 674f3246c14c5cc2216d5183ed7375208fc8da00 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
bins = []
bin_sz = 0
1.upto(3).each { |i|
bin_sz = STDIN.gets.strip.split(",")[1].to_i
bins.push [[i], bin_sz]
}
cur_bin = []
cur_bin_sz = 0
while line = STDIN.gets
count, countcount = line.strip.split ","
count = count.to_i
countcount = countcount.to_i
if (cur_bin_sz + countcount) > bin_sz
bins.push [cur_bin, cur_bin_sz]
cur_bin = []
cur_bin_sz = countcount
else
cur_bin.push count
cur_bin_sz += countcount
end
end
bins.push [cur_bin, cur_bin_sz]
c = 0
e = 0
bins.each { |i|
puts "#{e} | #{i[0].size}: #{i[0][0]}.. #{i[1]}" if i[0].size > 0
c += 1 if i[0].size > 0
e += 1
}
puts "#{c} bins (#{bins.size})"
puts "bin sz #{bin_sz}"
|