#2600. 开心的金明

开心的金明

题目描述

金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:"你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过 NN 元钱就行"。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的 NN 元。于是,他把每件物品规定了一个重要度,分为 55 等:用整数 151 \sim 5 表示,第 55 等最重要。他还从因特网上查到了每件物品的价格(都是整数元)。他希望在不超过 NN 元(可以等于 NN 元)的前提下,使每件物品的价格与重要度的乘积的总和最大。

设第 jj 件物品的价格为 v[j]v[j],重要度为 w[j]w[j],共选中了 kk 件物品,编号依次为 j1,j2,,jkj_1, j_2, \dots, j_k,则所求的总和为:

$$v[j_1] \times w[j_1] + v[j_2] \times w[j_2] + \dots + v[j_k] \times w[j_k]$$

请你帮助金明设计一个满足要求的购物单。

输入格式

第一行:两个正整数 NNmm,用一个空格隔开(其中 N<30000N < 30000 表示总钱数,m<25m < 25 为希望购买物品的个数)。

接下来 mm 行:每行两个非负整数 vvww(其中 vv 表示该物品的价格,v10000v \le 10000ww 表示该物品的重要度,1w51 \le w \le 5)。

输出格式

仅一行,一个正整数,表示不超过总钱数的物品的价格与重要度乘积的总和的最大值(<100000000< 100000000)。

样例

1000 5
800 2
400 5
300 5
400 3
200 2
3900

提示

对于样例输入,55 件物品的价格与"价格 ×\times 重要度"价值如下:

  • 物品1:价格 800800,价值 800×2=1600800 \times 2 = 1600
  • 物品2:价格 400400,价值 400×5=2000400 \times 5 = 2000
  • 物品3:价格 300300,价值 300×5=1500300 \times 5 = 1500
  • 物品4:价格 400400,价值 400×3=1200400 \times 3 = 1200
  • 物品5:价格 200200,价值 200×2=400200 \times 2 = 400

选择物品 2233,总价 400+300=7001000400 + 300 = 700 \le 1000,总价值 2000+1500=35002000 + 1500 = 3500

选择物品 113355,总价 800+300+200=1300>1000800 + 300 + 200 = 1300 > 1000,超预算。

选择物品 223355,总价 400+300+200=9001000400 + 300 + 200 = 900 \le 1000,总价值 2000+1500+400=39002000 + 1500 + 400 = 3900

答案为 39003900

数据范围

  • N<30000N < 30000
  • m<25m < 25
  • v10000v \le 10000
  • 1w51 \le w \le 5