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;
}
相关推荐
查理零世2 分钟前
【蓝桥杯集训·每日一题2025】 AcWing 6134. 哞叫时间II python
python·算法·蓝桥杯
仟濹3 分钟前
【二分搜索 C/C++】洛谷 P1873 EKO / 砍树
c语言·c++·算法
紫雾凌寒11 分钟前
解锁机器学习核心算法|神经网络:AI 领域的 “超级引擎”
人工智能·python·神经网络·算法·机器学习·卷积神经网络
YH_DevJourney33 分钟前
Linux-C/C++《C/8、系统信息与系统资源》
linux·c语言·c++
Igallta_8136221 小时前
【小游戏】C++控制台版本俄罗斯轮盘赌
c语言·开发语言·c++·windows·游戏·游戏程序
MiyamiKK572 小时前
leetcode_位运算 190.颠倒二进制位
python·算法·leetcode
C137的本贾尼2 小时前
解决 LeetCode 串联所有单词的子串问题
算法·leetcode·c#
青橘MATLAB学习2 小时前
时间序列预测实战:指数平滑法详解与MATLAB实现
人工智能·算法·机器学习·matlab
lingllllove2 小时前
matlab二维艾里光束,阵列艾里光束,可改变光束直径以及距离
开发语言·算法·matlab
88号技师2 小时前
2025年2月一区SCI-海市蜃楼搜索优化算法Mirage search optimization-附Matlab免费代码
开发语言·人工智能·算法·机器学习·matlab·优化算法