Submission #7791038
Source Code Expand
N, M = gets.split.map(&:to_i)
Q, Ikr, FullBit = [], Hash.new{|h,k| h[k] = 100001 }, (1<<N)-1
master_key = 0
M.times{
a, c = gets.to_i, gets.split.map(&:to_i)
tkrbit = c.inject(0){|bit, tkr|
bit | (1<<(tkr-1))
}
next if Ikr[tkrbit] < a
master_key |= tkrbit
Ikr[tkrbit] = a
Q << ((a<<N)|tkrbit)
}
if master_key != FullBit
p -1
exit
end
Q.sort!
while lowest = Q.shift
low_cost, low_tkrbit = lowest>>N, lowest&FullBit
next if Ikr[low_tkrbit] < low_cost
break if low_tkrbit == FullBit
q, r = [], []
while kg = Q.shift
cost, tkrbit = kg>>N, kg&FullBit
next if Ikr[tkrbit] < cost
cost, tkrbit = low_cost+cost, low_tkrbit|tkrbit
next if tkrbit == low_tkrbit
q << kg
next if Ikr[tkrbit] <= cost
Ikr[tkrbit] = cost
r << ((cost<<N)|tkrbit)
end
until q.empty?
unless r.empty?
Q << (q[0] < r[0] ? q : r).shift
else
Q.concat(q)
q.clear
end
end
Q.concat r
end
p Ikr[FullBit]
Submission Info
| Submission Time | |
|---|---|
| Task | E - Get Everything |
| User | ds14050 |
| Language | Ruby (2.3.3) |
| Score | 500 |
| Code Size | 963 Byte |
| Status | AC |
| Exec Time | 565 ms |
| Memory | 2684 KiB |
Compile Error
./Main.rb:16: warning: ambiguous first argument; put parentheses or a space even after `-' operator
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 500 / 500 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00-sample-00, 00-sample-01, 00-sample-02 |
| All | 00-sample-00, 00-sample-01, 00-sample-02, 01-handmade-03, 01-handmade-04, 01-handmade-05, 01-handmade-06, 01-handmade-07, 02-random-08, 02-random-09, 02-random-10, 02-random-11, 02-random-12, 02-random-13, 02-random-14, 02-random-15, 02-random-16, 02-random-17, 02-random-18, 02-random-19, 02-random-20, 02-random-21, 02-random-22, 02-random-23, 02-random-24, 02-random-25, 02-random-26, 02-random-27, 02-random-28, 02-random-29, 02-random-30, 02-random-31, 02-random-32, 02-random-33, 02-random-34, 02-random-35, 02-random-36, 02-random-37, 02-random-38, 02-random-39 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00-sample-00 | AC | 8 ms | 1788 KiB |
| 00-sample-01 | AC | 8 ms | 1788 KiB |
| 00-sample-02 | AC | 8 ms | 1788 KiB |
| 01-handmade-03 | AC | 11 ms | 1916 KiB |
| 01-handmade-04 | AC | 13 ms | 1916 KiB |
| 01-handmade-05 | AC | 45 ms | 2044 KiB |
| 01-handmade-06 | AC | 10 ms | 1912 KiB |
| 01-handmade-07 | AC | 15 ms | 1912 KiB |
| 02-random-08 | AC | 12 ms | 1788 KiB |
| 02-random-09 | AC | 10 ms | 1788 KiB |
| 02-random-10 | AC | 20 ms | 1788 KiB |
| 02-random-11 | AC | 9 ms | 1788 KiB |
| 02-random-12 | AC | 11 ms | 1788 KiB |
| 02-random-13 | AC | 9 ms | 1788 KiB |
| 02-random-14 | AC | 14 ms | 1788 KiB |
| 02-random-15 | AC | 16 ms | 1912 KiB |
| 02-random-16 | AC | 18 ms | 1912 KiB |
| 02-random-17 | AC | 14 ms | 1788 KiB |
| 02-random-18 | AC | 14 ms | 1912 KiB |
| 02-random-19 | AC | 86 ms | 2044 KiB |
| 02-random-20 | AC | 8 ms | 1788 KiB |
| 02-random-21 | AC | 32 ms | 1912 KiB |
| 02-random-22 | AC | 12 ms | 1912 KiB |
| 02-random-23 | AC | 13 ms | 1788 KiB |
| 02-random-24 | AC | 14 ms | 1916 KiB |
| 02-random-25 | AC | 22 ms | 1916 KiB |
| 02-random-26 | AC | 145 ms | 2300 KiB |
| 02-random-27 | AC | 26 ms | 1916 KiB |
| 02-random-28 | AC | 10 ms | 1788 KiB |
| 02-random-29 | AC | 43 ms | 1912 KiB |
| 02-random-30 | AC | 111 ms | 2044 KiB |
| 02-random-31 | AC | 14 ms | 1912 KiB |
| 02-random-32 | AC | 223 ms | 2172 KiB |
| 02-random-33 | AC | 144 ms | 2044 KiB |
| 02-random-34 | AC | 17 ms | 1788 KiB |
| 02-random-35 | AC | 15 ms | 1916 KiB |
| 02-random-36 | AC | 11 ms | 1788 KiB |
| 02-random-37 | AC | 15 ms | 1916 KiB |
| 02-random-38 | AC | 11 ms | 1788 KiB |
| 02-random-39 | AC | 565 ms | 2684 KiB |