Atcoder Beginner Contest153E(完全背包)

完全背包,价值取题意代价的最小值

 1 #define HAVE_STRUCT_TIMESPEC
 2 #include<bits/stdc++.h>
 3 using namespace std;
 4 int a[10007],b[10007],f[10007];
 5 int main(){
 6     ios::sync_with_stdio(false);
 7     cin.tie(NULL);
 8     cout.tie(NULL);
 9     int h,n;
10     cin>>h>>n;
11     for(int i=1;i<=n;++i)
12         cin>>a[i]>>b[i];
13     for(int i=1;i<=h;++i)
14         f[i]=1e9;
15     f[0]=0;
16     for(int i=1;i<=n;++i)
17         for(int j=0;j<=h;++j){
18             int x=max(0,j-a[i]);
19             f[j]=min(f[j],f[x]+b[i]);
20         }
21     cout<<f[h];
22     return 0;
23 }

 

posted @ 2020-01-27 15:25  sewage  阅读(184)  评论(0编辑  收藏  举报