D, G = list(map(int,input().split()))

pc = [list(map(int,input().split())) for _ in range(D)]



ans = 1e9

for i in range(1 << D):

  cnt = 0

  point = 0

  for j in range(D):

    if(((i >> j) & 1) == 1):

      point += pc[j][0]*100*(j+1) + pc[j][1]

      cnt += pc[j][0]

    else:

      tmp = j

  if(point < G):

    x = G - point

    if((pc[tmp][0]-1)*(tmp+1)*100 < x):

      continue

    cnt += -(-x//(100*(tmp+1)))

  ans = min(ans, cnt)

print(ans)
D, G = list(map(int,input().split()))

PC = [list(map(int,input().split())) for _ in range(D)]



ans = 1e9

for i in range(1 << D):

  point = 0

  cnt = 0

  for j in range(D):

    if(((i >> j) & 1) == 1):

      point += PC[j][0]*(j+1)*100 + PC[j][1]

      cnt += PC[j][0]

    else:

      tmp = j

  if(point < G):

    x = G - point

    if((PC[tmp][0]-1)*(tmp+1)*100 < x):

      continue

    cnt += -(-x//(100*(tmp+1)))

  ans = min(ans, cnt)

print(ans)
D, G = list(map(int, input().split()))
pc = [list(map(int, input().split())) for _ in range(D)]
ans = 1e9
for i in range(1 << D):
    cnt = 0
    point = 0
    for j in range(D):
        if ((i >> j) & 1) == 1:
            point += pc[j][0] * 100 * (j + 1) + pc[j][1]
            cnt += pc[j][0]
        else:
            tmp = j
    if point < G:
        x = G - point
        if (pc[tmp][0] - 1) * (tmp + 1) * 100 < x:
            continue
        cnt += -(-x // (100 * (tmp + 1)))
    ans = min(ans, cnt)
print(ans)

D, G = list(map(int, input().split()))
PC = [list(map(int, input().split())) for _ in range(D)]
ans = 1e9
for i in range(1 << D):
    point = 0
    cnt = 0
    for j in range(D):
        if ((i >> j) & 1) == 1:
            point += PC[j][0] * (j + 1) * 100 + PC[j][1]
            cnt += PC[j][0]
        else:
            tmp = j
    if point < G:
        x = G - point
        if (PC[tmp][0] - 1) * (tmp + 1) * 100 < x:
            continue
        cnt += -(-x // (100 * (tmp + 1)))
    ans = min(ans, cnt)
print(ans)

-pc = [list(map(int, input().split())) for _ in range(D)] +PC = [list(map(int, input().split())) for _ in range(D)] +    point = 0 -    point = 0 -            point += pc[j][0] * 100 * (j + 1) + pc[j][1] -            cnt += pc[j][0] +            point += PC[j][0] * (j + 1) * 100 + PC[j][1] +            cnt += PC[j][0] -        if (pc[tmp][0] - 1) * (tmp + 1) * 100 < x: +        if (PC[tmp][0] - 1) * (tmp + 1) * 100 < x: