题目描述
有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕。

而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度之和刚好为 m 的小蛋糕,

而且大嘴还特别懒,她希望通过吃数量最少的小蛋糕达到这个目的.

所以她希望你能设计一个程序帮她决定要吃哪些小蛋糕.

输入格式
先输入一行包含 2 个整数 m、n,表示大嘴需要吃美味度和为 m 的小蛋糕,而小蛋糕一共有 n 种,
下面输入 n 行,每行 2 个整数,第一个表示该种小蛋糕的美味度,第二个表示蛋糕店中该种小蛋糕的总数

输出格式
输出一行包含一个整数表示大嘴最少需要吃的小蛋糕数量;
若大嘴无法通过吃小蛋糕达到 m 的美味度和,则输出 "><“.

样例输入
10 2
4 1
2 10

样例输出
4

数据范围
1 ≤ n ≤ 50.
1 ≤ m ≤ 20000


题解一
多重背包(1.0):

#include <iostream>
#include <cstring>
using namespace std;const int N = 50, M = 20010;int w[N], s[N];
int f[N][M];int main()
{int n, m;cin >> m >> n;for (int i = 1; i <= n; i ++) cin >> w[i] >> s[i];memset(f, 0x3f, sizeof f);f[0][0] = 0;for (int i = 1; i <= n; i ++)for (int j = 0; j <= m; j ++)for (int k = 0; k <= s[i] && k * w[i] <= j; k ++)f[i][j] = min(f[i][j], f[i - 1][j - w[i] * k] + k);if(f[n][m] != 0x3f3f3f3f) cout << f[n][m] << endl;else cout << "><" << endl;return 0;
}

题解二
多重背包(2.0):

#include <iostream>
#include <cstring>
using namespace std;const int N = 50, M = 20010;int w[N], s[N];
int f[M];int main()
{int n, m;cin >> m >> n;for (int i = 1; i <= n; i ++) cin >> w[i] >> s[i];memset(f, 0x3f, sizeof f);f[0] = 0;for (int i = 1; i <= n; i ++)for (int j = m; j >= 0; j --)for (int k = 0; k <= s[i] && k * w[i] <= j; k ++)f[j] = min(f[j], f[j - w[i] * k] + k);if(f[m] != 0x3f3f3f3f) cout << f[m] << endl;else cout << "><" << endl;return 0;
}

算法提高(VIP)——贪吃的大嘴相关推荐

  1. [蓝桥杯][算法提高VIP]贪吃的大嘴(多重背包)

    题目描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕,而且大嘴还特别懒,她希望通过吃数量最少的小蛋糕达到这个目的.所以她 ...

  2. 贪吃的大嘴java_[蓝桥杯][算法提高VIP]贪吃的大嘴-题解(Java代码)

    解题思路:多重背包 注意事项: 参考代码: import java.util.Arrays; import java.util.Scanner; public class llq1{ public s ...

  3. 蓝桥杯算法提高VIP-贪吃的大嘴

    题目 题目链接 题解 动态规划. 多重背包模板题. 转化成要放满承重为m的背包,所需的物品的最小价值为多少:每个物品的价值就是1,即1个,每种物品还有数量限制,套用多重背包模板即可. 代码1是二维实现 ...

  4. Java实现 蓝桥杯VIP 算法提高 贪吃的大嘴

    算法提高 贪吃的大嘴 时间限制:1.0s 内存限制:256.0MB 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕 ...

  5. 贪吃的大嘴java_Java实现 蓝桥杯VIP 算法提高 贪吃的大嘴

    算法提高 贪吃的大嘴 时间限制:1.0s 内存限制:256.0MB 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕 ...

  6. 贪吃的大嘴用java_算法提高 贪吃的大嘴

    试题 算法提高 贪吃的大嘴(动态规划) 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕,而且大嘴还特别懒,她希望通 ...

  7. 【蓝桥练习系统】【多重背包】 算法提高 贪吃的大嘴

    问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小蛋糕,而且大嘴还特别懒,她希望通过吃数量最少的小蛋糕达到这个目的.所以她 ...

  8. 蓝桥杯 ADV-168 贪吃的大嘴

    算法提高 贪吃的大嘴 时间限制:1.0s   内存限制:256.0MB 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大嘴是很傲娇的,一定要吃美味度和刚好为m的小 ...

  9. 1737:贪吃的大嘴

    1737:贪吃的大嘴 Description 算法提高 贪吃的大嘴 时间限制;1.0s 内存限制:256.0MB 问题描述 有一只特别贪吃的大嘴,她很喜欢吃一种小蛋糕,而每一个小蛋糕有一个美味度,而大 ...

最新文章

  1. 你想要的宏基因组-微生物组知识全在这(180601)
  2. Ubuntu下编译内核
  3. vs code 快捷键设置 2018
  4. 计算机应用技术备选计划方案,华东理工大学博士研究生培养方案计算机应用技术、计算机软件与理论、计算机系统结构二级学科(学科代码:081203、081202、081201)信息科学与工程学院...
  5. 微软XAML Studio - WPF, UWP, Xamarin等技术开发者的福音
  6. AllTray-将办法最小化到琐细托盘
  7. java.security.InvalidKeyException: Illegal key size
  8. html 美化input file,Input[type=”file”] 显示效果美化方法 | 智慧宫
  9. java对mysql的简单操作——增加数据
  10. bobsmith电路阻抗原理_串联谐振原理全解析 - 赫兹电力
  11. 泰勒·斯威夫特(Taylor Swift)最好听歌曲专辑,喜欢的可以下载保存
  12. Linux C语言写的超级简单端口扫描器
  13. Kylo 0.8.3 安装
  14. 阿里巴巴python开发面试_在阿里巴巴面试,是什么样的体验?
  15. android lbs 定位服务,基于Android的LBS定位系统的设计
  16. 没有比粥更温柔的了。念予毕生流离红尘,就找不到一个似粥温柔的人。
  17. 三菱fx3uplc恢复出厂设置_清除三菱FX系列PLC密码的三种方法
  18. 用python写生日快乐说说_祝自己生日快乐的说说
  19. docker查看内部tcp长连接
  20. OpenCV学习第十三篇:提取水平和垂直线(去除干扰线)

热门文章

  1. 调用支付宝进行网页扫码支付
  2. 数字化时代的探索,企业如何做好数字化转型?
  3. Java学习笔记-全栈-web开发-02-css必备基础
  4. 根据她为我祖母做杏仁茶的经验揣摩着做的
  5. 深度学习中的梯度消失与梯度爆炸及解决方案
  6. 计算机的芯片集成路,科学家研光开关可集成于硅芯片 用于无人驾驶汽车扫描道路所有部分...
  7. Linux项目部署教程
  8. 转载:Qt Creator的CDB调试器--使用技巧与心得,重点是Symbols Path设置
  9. Git删除远程Tag、分支
  10. python-opencv之人脸检测