基础dp
来源:互联网 发布:java url重写技术 编辑:程序博客网 时间:2024/06/08 13:07
题目链接:https://vjudge.net/contest/163018#problem/F
题意:
题意:存钱罐可以往里面放一些价值小的钱,但是时间久了就不知道里面有多少钱了,除非你打破它。现在给出空罐子的重量和最满能装到多重,然后给出每种硬币的价值和重量,我们要在不打破它的情况下确认罐子里最少有多少钱。
#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<queue>#include<algorithm>#include<iostream>#include<set>using namespace std;const int mmax = 600100;const int inf = 0x3f3f3f3f;int dp[mmax],data[mmax],da[mmax];int n;int p[mmax],w[mmax];int main(){ int t; cin>>t; while(t--) { int s,e; scanf("%d%d",&s,&e); cin>>n; int m = e-s; for(int i=0;i<n;i++) scanf("%d%d",&p[i],&w[i]); memset(dp,inf,sizeof(dp)); dp[0] = 0; //***重要 for(int i=0;i<n;i++) { for(int j=w[i];j<=m;j++) { dp[j] = min(dp[j],dp[j-w[i]]+p[i]); } } if(dp[m]==inf)puts("This is impossible."); else printf("The minimum amount of money in the piggy-bank is %d.\n",dp[m]); } return 0;}
阅读全文
0 0
- dp基础
- 基础DP
- 基础DP
- DP基础
- 基础DP
- 基础DP
- 基础DP
- 基础dp
- 基础dp
- DP·基础DP
- [DP]0817-08基础DP
- POJ1949 DP基础题
- 数位dp基础题目
- HDU 1176 基础DP
- HDU 2084 基础DP
- 【线性DP】基础练习
- 基础dp总结
- 基础概率DP小结
- [排序] 直接插入排序(Python)
- 如何下载通过 jitpack 发布的 jar
- centos 7 安装java redis
- html5 video 手机端视频播放全屏显示
- poj 3525 多边形内核,缩进
- 基础dp
- mybatis中llike模糊查询中#和$的使用
- yarn平台的内存分配和设置
- vue相关的开源项目
- 数据库索引的实现原理
- 创建私有Pods
- 简单易学的机器学习算法——Mean Shift聚类算法
- 浅谈三种特殊进程:孤儿进程,僵尸进程和守护进程
- nyoj756 重建二叉树