using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace AtCorder
{
    class Program
    {
        static void Main(string[] args)
        {

            //ABC104C
            var DG = ReadSplitInt();
            var D = DG[0];
            var G = DG[1];

            var pc = ReadSplitIntLines(D);
            var minCnt = int.MaxValue;

            for (int i = 0; i < (1 << D); i++)
            {
                var cnt = 0;
                var point = 0;

                // ボーナス取得可否判定
                for (int j = 0; j < D; j++)
                {
                    // piを完全回答
                    if ((i & (1 << j)) != 0)
                    {
                        point += (pc[j][0] * ((j + 1) * 100)) + pc[j][1];
                        cnt += pc[j][0];
                    }
                }

                if (point >= G)
                {
                    minCnt = Math.Min(minCnt, cnt);
                }
                else
                {
                    var doBreak = false;
                    for (int k = D - 1; 0 <= k; k--) 
                    {
                        if ((i & (1 << k)) == 0)
                        {
                            for (int l = 0; l < pc[k][0]; l++)
                            {
                                point += (100 * (k + 1));
                                cnt++;
                                if (point >= G)
                                {
                                    minCnt = Math.Min(minCnt, cnt);
                                    doBreak = true;
                                    break;
                                }
                            }
                        }
                        if (doBreak)
                        {
                            break;
                        }
                    }
                }
            }

            Console.WriteLine(minCnt);





            Console.ReadKey();
        }



        #region MyRegion

        public static int ReadInt()
        {
            return int.Parse(Console.ReadLine());
        }

        /// <summary>
        /// 空白区切の数値を取得する
        /// </summary>
        /// <returns>The read split int.</returns>
        public static int[] ReadSplitInt()
        {
            return Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray();
        }

        /// <summary>
        /// 空白区切の数値を取得
        /// </summary>
        /// <returns>The read split long.</returns>
        public static long[] ReadSplitLong()
        {
            return Console.ReadLine().Split(' ').Select(x => long.Parse(x)).ToArray();
        }


        public static int[][] ReadSplitIntLines(int n)
        {
            return Enumerable.Range(0, n).Select(x => ReadSplitInt()).ToArray();
        }

        public static long[][] ReadSplitLongLines(int n)
        {
            return Enumerable.Range(0, n).Select(x => ReadSplitLong()).ToArray();
        }

        public static long[][] ReadSplitLongLines(long n)
        {
            var ret = new List<long[]>();
            for (long i = 0; i < n; i++)
            {
                ret.Add(ReadSplitLong().ToArray());
            }

            return ret.ToArray();
        }

        #endregion

    }
}



Measured memory_bytes: 13524