/ :-) / 题库 /

开心的金明

开心的金明

问题描述

金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过\(N\)元钱就行”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的\(N\)元。于是,他把每件物品规定了一个重要度,分为\(5\)等:用整数\(1-5\)表示,第\(5\)等最重要。他还从因特网上查到了每件物品的价格(都是整数元)。他希望在不超过\(N\)元(可以等于\(N\)元)的前提下,使每件物品的价格与重要度的乘积的总和最大。
设第j件物品的价格为\(v_{[j]}\),重要度为\(w_{[j]}\),共选中了\(k\)件物品,编号依次为\(j_1\),\(j_2\),……,\(j_k\),则所求的总和为:
\(v_{[j1]} \times w_{[j1]} + v_{[j2]} \times w_{[j2]} +\) ……\(+v_{[jk]} \times w_{[jk]}\)。
请你帮助金明设计一个满足要求的购物单。

输入输出格式

输入

第\(1\)行,为两个正整数,用一个空格隔开:\(N\)和\(m\)(其中\(N\)(\(N<30000\))表示总钱数,\(m\)(\(m<25\))为希望购买物品的个数。)
从第\(2\)行到第\(m+1\)行,第\(j\)行给出了编号为\(j-1\)的物品的基本数据,每行有2个非负整数:\(v\)和\(p\)。(其中\(v\)表示该物品的价格(\(v \le 10000\)),\(p\)表示该物品的重要度(\(1\)~\(5\)))

输出

只有一个正整数,为不超过总钱数的物品的价格与重要度乘积的总和的最大值(\(<100000000\))。

样例

Input1

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

Output1

3900

评测时空分配(每单个测试数据)

时间

1s

空间

1MB

信息

难度
9
分类
背包动态规划 点击显示
标签
递交数
3
已通过
2
通过率
67%
上传者

相关

在下列训练计划中:

神奇的动态规划