OJ_点菜问题(背包问题)

题干

C++实现

cpp 复制代码
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<vector>
using namespace std;

int main() {
	int c, n;
	scanf("%d%d", &c, &n);
	int p[101];
	int v[101];

	for (int i = 0; i < n; i++)
	{
		scanf("%d%d", &p[i], &v[i]);
	}
	//dp[x][y]:在总金额不超过x的情况下,考察0~y-1号商品的最大评分
	int dp[1001][102];
	for (int y = 0; y <= n; y++)
	{
		dp[0][y] = 0;
	}
	for (int x = 0; x <= c; x++)
	{
		dp[x][0] = 0;
	}

	for (int x = 1; x <= c; x++)
	{
		for (int y = 1; y <= n; y++) {
			if (x - p[y - 1] < 0) {
				dp[x][y] = dp[x][y - 1];
			}
			else {
				dp[x][y] = max(dp[x][y - 1], dp[x - p[y - 1]][y - 1] + v[y - 1]);
			}
		}
	}

	printf("%d\n", dp[c][n]);
	return 0;
}
相关推荐
lxyzcm6 分钟前
C++23新特性解析:[[assume]]属性
java·c++·spring boot·c++23
蜀黍@猿25 分钟前
C/C++基础错题归纳
c++
古希腊掌管学习的神27 分钟前
[搜广推]王树森推荐系统笔记——曝光过滤 & Bloom Filter
算法·推荐算法
qystca28 分钟前
洛谷 P1706 全排列问题 C语言
算法
浊酒南街34 分钟前
决策树(理论知识1)
算法·决策树·机器学习
雨中rain40 分钟前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
就爱学编程41 分钟前
重生之我在异世界学编程之C语言小项目:通讯录
c语言·开发语言·数据结构·算法
学术头条1 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
Schwertlilien1 小时前
图像处理-Ch4-频率域处理
算法
IT猿手2 小时前
最新高性能多目标优化算法:多目标麋鹿优化算法(MOEHO)求解TP1-TP10及工程应用---盘式制动器设计,提供完整MATLAB代码
开发语言·深度学习·算法·机器学习·matlab·多目标算法