题解 | #最小邮票数#

最小邮票数

https://www.nowcoder.com/practice/83800ae3292b4256b7349ded5f178dd1

#include <cstdio>
#include <iostream>
using namespace std;
const int maxn=101;
int dp[maxn];
int v[maxn];
int maxint=10000;

int main() {
    int m,n;
    while(cin>>m>>n){
        for(int i=1;i<=n;i++){
            scanf("%d",&v[i]);
        }
        for(int i=0;i<maxn;i++) dp[i]=maxint;
        dp[0]=0;
        for(int i=1;i<=n;i++){
            for(int j=m;j>=v[i];j--){
                dp[j]=min(dp[j],dp[j-v[i]]+1);
            }
        }
        if(dp[m]==maxint) cout<<"0"<<endl;
        else cout<<dp[m]<<endl;
    }
}

全部评论

相关推荐

zygg:拼多多挂是不是过一两天就挂的呀
点赞 评论 收藏
分享
挣K存W养DOG:我记得好多人说这个公司就是白嫖方案的,现在有大体方案要让你给他展示实现细节了,也是无敌了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务