B3873 [GESP202309 六级] 小杨买饮料

B3873 GESP202309 六级 小杨买饮料 - 洛谷

输入输出样例:

输入1:

复制代码
5 100
100 2000
2 50
4 40
5 30
3 20

输出1:

复制代码
9

输入2:

复制代码
5 141
100 2000
2 50
4 40
5 30
3 20

输出2:

复制代码
100

输入3:

复制代码
4 141
2 50
4 40
5 30
3 20

输出3:

复制代码
no solution

代码1:

复制代码
#include<bits/stdc++.h>
using namespace std;
int dp[510][2010];
int c[510],l[510];
int main(){
    int n,L;
    cin>>n>>L;
    for(int i=1;i<=n;i++)
        cin>>c[i]>>l[i];
    memset(dp,0x7f,sizeof dp);
    for(int i=0;i<=509;i++)
        dp[i][0]=0;
    for(int i=1;i<=n;i++)
        for(int j=1;j<=L;j++)
            if(l[i]>=j) dp[i][j]=min(c[i],dp[i-1][j]);
            else        dp[i][j]=min(c[i]+dp[i-1][j-l[i]],dp[i-1][j]);
    if(dp[n][L]==0x7f7f7f7f)
        cout<<"no solution";
    else
        cout<<dp[n][L];
    return 0;
}

代码2:

复制代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
int dp[510][2010]; 
int c[510],l1[510];
signed main(){
	int n,l;
	cin>>n>>l;
	for(int i=1;i<=n;i++)
		cin>>c[i]>>l1[i];
	for(int i=0;i<=n;i++)
		for(int j=0;j<=l;j++)
			dp[i][j]=INT_MAX;
	for(int i=0;i<=n;i++)
		dp[i][0]=0;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=l;j++)
			if(l1[i]>=j) dp[i][j]=min(c[i],dp[i-1][j]);
			else		dp[i][j]=min(c[i]+dp[i-1][j-l1[i]],dp[i-1][j]);
	if(dp[n][l]==INT_MAX)
		cout<<"no solution";
	else
		cout<<dp[n][l];
	return 0;
}
相关推荐
尘客-追梦1 小时前
qmake / jom / 影子构建:把编译管起来
开发语言·c++·qt
Omics Pro1 小时前
北理工李荣华:AI虚拟细胞证据多模态推理基准
数据库·人工智能·算法·机器学习·自然语言处理
xieliyu.1 小时前
LeetCode 1419 数青蛙:状态模拟求最少青蛙数量|Java 题解
java·算法·leetcode
acd120091 小时前
线上偶发 499 错误,并非后端服务异常
算法
Nil2081 小时前
leetcode 45跳跃游戏Ⅱ
算法·leetcode·游戏
Zootopia6261 小时前
论文复现|五机编队任务链
c语言·c++·考研·无人机·创业创新·学习方法·高考
王老师青少年编程2 小时前
2026年6月GESP真题及题解(C++八级): 选择题和判断题(题解)
c++·题解·真题·gesp·csp·信奥赛·八级
小蒋观天下2 小时前
端侧大模型在安防摄像头部署实操(下篇)|模型量化、推理加速、视频接入与量产调优
大数据·人工智能·算法·安全·机器学习·计算机视觉·ai大模型
sinat_286945192 小时前
大模型推理:部署方式与性能优化思路
人工智能·算法·缓存·chatgpt·性能优化