Advertisement
Guest User

RCC Qual 3 Task B

a guest
Apr 29th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.81 KB | None | 0 0
  1. t = int(input())
  2. for t_i in range(t):
  3.     n, H, A = map(int, input().split())
  4.     p = []
  5.     for i in range(n):
  6.         h, a = map(int, input().split())
  7.         x = h // A
  8.         if h % A != 0:
  9.             x += 1
  10.         p.append([h, a, x * a])
  11.     p = sorted(p, key = lambda item: item[2], reverse = True)
  12.     res = None
  13.     for i in range(n):
  14.         a1 = H // p[i][1]
  15.         if H % p[i][1] != 0:
  16.             a1 += 1
  17.         a2 = p[i][0] // A
  18.         if p[i][0] % A != 0:
  19.             a2 += 1
  20.  
  21.         if a1 < a2:
  22.             H = H - p[i][1] * a1
  23.             p[i][0] = p[i][0] - A * a1
  24.         else:
  25.             H = H - p[i][1] * a2
  26.             p[i][0] = p[i][0] - A * a2
  27.         if H <= 0:
  28.             res = i
  29.             break
  30.     if res == None:
  31.         print (-1)
  32.     else:
  33.         print (res)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement