zoukankan      html  css  js  c++  java
  • TYVJ P 1214 硬币问题

    TYVJ  P 1214 硬币问题

    时间: 1000ms / 空间: 131072KiB / Java类名: Main

    描述

      有n种硬币,面值为别为a[1],a[2],a[3]……a[n],每种都有无限多。给定非负整数s,可以选取多少个硬币使得面值和恰好为s?输出硬币数目最小值和最大值

    输入格式

    第1行n
    第2行s
    第3到n+2行为n种不同的面值

    输出格式

    第1行为最小值
    第2行为最大值

    测试样例1

    输入





    3

    输出


    6

    备注

    1<=n<=100
    1<=s<=10000
    1<=a[i]<=s
     1   #include<iostream>
     2   using namespace std;
     3   #include<cstdio>
     4   #include<cstring>
     5   #define N 105
     6   #define S 10010
     7   int n,s,a[N];
     8   int minv[S],maxv[S];
     9   int main()
    10   {
    11       scanf("%d%d",&n,&s);
    12       for(int i=1;i<=n;++i)
    13         scanf("%d",&a[i]);
    14       memset(minv,99,sizeof(minv));
    15       memset(maxv,-99,sizeof(maxv));
    16       minv[0]=maxv[0]=0;
    17       for(int i=1;i<=s;++i)
    18         for(int j=1;j<=n;++j)
    19         if(i>=a[j])
    20         {
    21             minv[i]=min(minv[i],minv[i-a[j]]+1);
    22               maxv[i]=max(maxv[i],maxv[i-a[j]]+1);
    23         }
    24       printf("%d
    %d",minv[s],maxv[s]);
    25       return 0;
    26   }

     

  • 相关阅读:
    babel的使用及安装配置
    npm install卡顿问题
    盒模型
    安全性
    字符串方法
    vue
    CSS3
    重载运算符
    装箱拆箱
    模板库
  • 原文地址:https://www.cnblogs.com/suishiguang/p/6076539.html
Copyright © 2011-2022 走看看