import scala.collection.mutable.{Map => MMap}
object Main extends App {
  type Score = Long
  type Count = Int
  val in = new java.util.Scanner(System.in)
  val D = in.nextInt
  val G = in.nextLong / 100
  case class Problem(n: Int, bonus: Score)
  val Ps = List.fill(D)(Problem(in.nextInt, in.nextLong / 100))

  val map = MMap[Score, Count](0L -> 0).withDefaultValue(Int.MaxValue)
  def dp(ps: List[Problem], mult: Int): Count = {
    val list = map.toList
    ps match {
      case Nil => map.minBy(cs => if (cs._1 >= G) cs._2 else Int.MaxValue)._2
      case x :: xs =>
        for {
          n <- (1 to x.n)
          sc <- list
        } {
          val (score, count) = sc
          val newScore = score + n * mult + (if (n == x.n) x.bonus else 0L)
          map(newScore) = map(newScore) min (count + n)
        }
        dp(xs, mult + 1)
    }
  }

  println(dp(Ps, 1)) 
}