Submission #10374874
Source Code Expand
D, G = map(int, input().split()) P = [list(map(int, input().split())) for d in range(D)] ans = 10**9 for bit in range(1 << D): t = 0 count = 0 for i in range(D): if bit & (1 << i): t += P[i][0] * (100*(i+1)) + P[i][1] count += P[i][0] if t >= G: if ans > count: ans = count else: for i in reversed(range(D)): if bit & (1 << i): continue for p in range(P[i][0]): t += (i+1)*100 count += 1 if t >= G: if ans > count: ans = count print(ans)
Submission Info
Submission Time | |
---|---|
Task | C - All Green |
User | kazuita |
Language | Python (3.4.3) |
Score | 300 |
Code Size | 582 Byte |
Status | AC |
Exec Time | 144 ms |
Memory | 3064 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | a01, a02, a03, a04 |
All | a01, a02, a03, a04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
a01 | AC | 17 ms | 3064 KB |
a02 | AC | 17 ms | 3064 KB |
a03 | AC | 17 ms | 3064 KB |
a04 | AC | 17 ms | 3064 KB |
b05 | AC | 17 ms | 3064 KB |
b06 | AC | 144 ms | 3064 KB |
b07 | AC | 21 ms | 3064 KB |
b08 | AC | 17 ms | 3064 KB |
b09 | AC | 17 ms | 3064 KB |
b10 | AC | 17 ms | 3064 KB |
b11 | AC | 18 ms | 3064 KB |
b12 | AC | 32 ms | 3064 KB |
b13 | AC | 35 ms | 3064 KB |
b14 | AC | 66 ms | 3064 KB |
b15 | AC | 71 ms | 3064 KB |
b16 | AC | 96 ms | 3064 KB |
b17 | AC | 69 ms | 3064 KB |
b18 | AC | 45 ms | 3064 KB |
b19 | AC | 47 ms | 3064 KB |
b20 | AC | 22 ms | 3064 KB |
b21 | AC | 48 ms | 3064 KB |
b22 | AC | 50 ms | 3064 KB |
b23 | AC | 37 ms | 3064 KB |
b24 | AC | 51 ms | 3064 KB |