硬币问题

  • Post author:
  • Post category:其他


题目:有n种硬币,面值分别为V1,V2,…Vn,每种都有无限多。给定非负整数S,可以选用多少个硬币,使得面值之和恰好为S?输出硬币数目的最小值和最大值!

代码1:

记忆化搜索:

#include <iostream>
#include <cstring>
using namespace std;

const int MAXN = 10000;
const int INF = 100000000;
int n, S, V[MAXN], d[MAXN], vis[MAXN];

int dpmax(int S) {
    if(vis[S]) return d[S];
    vis[S] 



版权声明:本文为zt_1995原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。