A96804.Welcome24ever 和便当

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

NN 种便当,每种便当各有 11 个在售。
对于 i=1,2,,Ni = 1,2,\dots,N,第 ii 种便当中包含 AiA_i 个章鱼烧和 BiB_i 个鲷鱼烧。

Welcome24ever 希望吃到至少 XX 个章鱼烧,并且至少 YY 个鲷鱼烧。

他可以从这 NN 种便当中选择若干个(每种最多选一次),请你判断是否存在一种选择方式,使得:

  • 所有选中便当中的章鱼烧总数不少于 XX
  • 所有选中便当中的鲷鱼烧总数不少于 YY

如果存在,请你求出需要购买的便当最少数量;如果不存在,输出 1-1

输入格式

输入的第一行包含一个整数 NN

第二行包含两个整数 X,YX,Y

接下来的 NN 行中,第 ii 行包含两个整数 Ai,BiA_i,B_i,表示第 ii 种便当中章鱼烧和鲷鱼烧的数量。

输出格式

如果无法通过购买若干个便当获得至少 XX 个章鱼烧和至少 YY 个鲷鱼烧,则输出 1-1
否则,输出一个整数,表示需要购买的便当的最小数量。

输入输出样例

  • 输入#1

    3
    5 6
    2 1
    3 4
    2 3

    输出#1

    2
  • 输入#2

    3
    8 8
    3 4
    2 3
    2 1

    输出#2

    -1

说明/提示

数据范围

  • 1N3001 \le N \le 300
  • 1X3001 \le X \le 300
  • 1Y3001 \le Y \le 300
  • 对所有 ii,有 1Ai3001 \le A_i \le 3001Bi3001 \le B_i \le 300
  • 输入中的所有数都是整数。

样例解释 1

Welcome24ever 希望吃到至少 55 个章鱼烧和至少 66 个鲷鱼烧。

便当列表如下:

  • 11 种:22 个章鱼烧,11 个鲷鱼烧;
  • 22 种:33 个章鱼烧,44 个鲷鱼烧;
  • 33 种:22 个章鱼烧,33 个鲷鱼烧。

可以选择第 22 种和第 33 种便当,此时:

  • 章鱼烧总数为 3+2=53 + 2 = 5
  • 鲷鱼烧总数为 4+3=74 + 3 = 7

这已经满足“至少 55 个章鱼烧、至少 66 个鲷鱼烧”的要求,并且只买了 22 个便当。
可以证明不存在只买 11 个便当就能满足条件的方案,所以答案为 22

样例解释 2

即使 Welcome24ever 买下所有 33 个便当,总共也只有:

  • 章鱼烧:3+2+2=73 + 2 + 2 = 7
  • 鲷鱼烧:4+3+1=84 + 3 + 1 = 8

章鱼烧总数只有 77,小于需要的 88,无论如何选择都达不到要求,所以输出 1-1

首页