bzoj1618 / P2918 [USACO08NOV]买干草Buying Hay(完全背包)
2024-08-11 19:16:03
P2918 [USACO08NOV]买干草Buying Hay
显然的完全背包
设$f[i]$为买$i$磅干草的最小代价
搞搞完全背包即可
注意到最后可能买的干草超出范围,但是价格可能更低。
于是我们的背包处理到$m+maxP$即可(本题$P_{i}<=5000$)
end.
#include<iostream>
#include<cstdio>
#include<cstring>
#define re register
using namespace std;
int min(int a,int b){return a<b?a:b;}
#define P 5000
int n,m,f[],a,b,ans;
int main(){
memset(f,,sizeof(f));ans=f[];f[]=;
scanf("%d%d",&n,&m);
for(re int i=;i<=n;++i){
scanf("%d%d",&a,&b);
for(re int j=a;j<=m+P;++j)//处理到m+maxP
f[j]=min(f[j],f[j-a]+b);
}
for(re int j=m+P;j>=m;--j) ans=min(ans,f[j]);//在超出的范围中找最小值
printf("%d",ans);
return ;
}
最新文章
- 我使用celery以及docker部署遇到的问题
- Pinyin4Net
- 关于python中字典的一些总结
- Windows服务简单实例
- [精读]Spationtemporal Saliency Detection Using Textural Contrast and Its Applications
- SPOJ 7001(莫比乌斯反演)
- Gradle 1.12 翻译——第十六章. 使用文件
- C语言第11课
- JavaScript(8)——JSON
- windows下编译Android版本的boost库文件
- RadAsm使用
- 性能测试培训:定位jvm耗时函数
- softmax_cross_entropy_with_logits
- 一起happy--C++小组Alpha版本发布说明
- iOS----------关于UDID和UUID的一些理解
- shell编程学习笔记(八):Shell中的if条件判断
- 前端项目添加自定义icont图标步骤
- 解决Cordova开发的iOS的app界面被状态栏覆盖
- Web应用配置虚拟主机(www.baidu.com)
- JS高级. 01 复习JS基础