HDU1114 Piggy-Bank(完全背包)

题意:给一个储钱罐,已知空的储钱罐和装了硬币的储钱罐的质量。然后给了n种硬币的质量和价值。

问储钱罐里最少有多少钱。

解法:完全背包。注意要初始化为 INF,要正好装满,如果结果是INF,输出This is impossible.

/* ***********************************************
Author        :devil
Created Time  :2015/12/21 21:16:56
************************************************ */

#include <iostream>
#include <algorithm>
#include <cstring>
#include <cmath>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <cstdio>
using namespace std;
const int inf=0x3f3f3f3f;
int dp[10010],v[510],w[510];
int main()
{
    //freopen("in.txt","r",stdin);
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n,m;
        scanf("%d%d",&n,&m);
        m-=n;
        scanf("%d",&n);
        for(int i=0;i<n;i++)
            scanf("%d%d",&w[i],&v[i]);
        memset(dp,inf,sizeof(dp));
        dp[0]=0;
        for(int i=1;i<=m;i++)
        {
            for(int j=0;j<n;j++)
            {
                if(i>=v[j]) dp[i]=min(dp[i],dp[i-v[j]]+w[j]);
            }
        }
        if(dp[m]!=inf) printf("The minimum amount of money in the piggy-bank is %d.\n",dp[m]);
        else printf("This is impossible.\n");
    }
    return 0;
}
时间: 2024-08-08 03:08:18

HDU1114 Piggy-Bank(完全背包)的相关文章

BZOJ 1531: [POI2005]Bank notes( 背包 )

多重背包... ---------------------------------------------------------------------------- #include<bits/stdc++.h> #define rep(i, n) for(int i = 0; i < n; i++) #define clr(x, c) memset(x, c, sizeof(x)) using namespace std; const int maxn = 209, maxk =

HDU1114 Piggy-Bank 【完全背包】

Piggy-Bank Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 11149    Accepted Submission(s): 5632 Problem Description Before ACM can do anything, a budget must be prepared and the necessary fina

hdu1114 dp(完全背包)

题意:已知空钱罐质量和满钱罐质量(也就是知道钱罐里的钱的质量),知道若干种钱币每种的质量以及其价值,钱币都是无限个,问最少钱罐中有多少钱. 这个题在集训的时候学长给我们做过,所以你会做是应该的,由于已经有固定的质量,所以是必须正好放满的完全背包问题.然后```具体过程就不细讲了完全背包依旧是经典,你要是还不会就滚回去看背包九讲并且无颜见学长们了``` 1 #include<stdio.h> 2 #include<string.h> 3 #define min(a,b) a<b

ACM Piggy Bank

Problem Description Before ACM can do anything, a budget must be prepared and the necessary financial support obtained. The main income for this action comes from Irreversibly Bound Money (IBM). The idea behind is simple. Whenever some ACM member has

寒假训练5解题报告

1.HDU 1114 Piggy Bank 一道简单的背包问题 #include <iostream> #include <cstdio> #include <cstring> using namespace std; #define ll long long const int N = 10005; const int INF = 0x3f3f3f3f; int dp[N]; int main() { // freopen("a.in" , &qu

动物名词

dog    n. 狗 I love dogs. Dogs are man's best friends. The dog is very cute. cat    n. 猫 I have a cat The cat is white The cat likes sleeping puppy    n. 小狗 doggie    n. 小狗 kitty    n. 小猫 rooster    n. 公鸡 It's hard to see a rooster in big cities. I sa

MapReuce中对大数据处理最合适的数据格式是什么?

本节作为<Hadoop从入门到精通>大型专题的第三章第二节将教大家如何在Mapreduce中使用XML和JSON两大常见格式,并分析比较最适合Mapreduce大数据处理的数据格式. 在本章的第一章节介绍中,我们简单了解了Mapreduce数据序列化的概念,以及其对于XML和JSON格式并不友好.本节作为<Hadoop从入门到精通>大型专题的第三章第二节将教大家如何在Mapreduce中使用XML和JSON两大常见格式,并分析比较最适合Mapreduce大数据处理的数据格式. 3.

一步步学习如何安装并使用SAP HANA Express Edition

使用Jerry这篇文章在Google Cloud platform上的Kubernetes集群部署HANA Express里介绍的方法在Google Cloud Platform的Kubernetes cluster上安装SAP HANA Express. 文中介绍了一个yaml文件,里面声明了容器镜像文件store/saplabs/hanaexpress:2.00.033.00.20180925.2. 安装完成后,在启动的pod里有两个容器,分别运行着SQLPad和HANA Express.

hdu1114 Piggy-Bank 完全背包

转载请注明出处:http://blog.csdn.net/u012860063 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114 Problem Description Before ACM can do anything, a budget must be prepared and the necessary financial support obtained. The main income for this action comes