美文网首页
找零钱的方案问题

找零钱的方案问题

作者: 小雨启明 | 来源:发表于2018-09-15 11:19 被阅读0次
原理和练习:https://www.nowcoder.com/questionTerminal/84ada2d688334355bf5cf07d394a59ca?orderByHotValue=2&questionTypes=000100&done=0&pos=1&onlyReference=false
#include<iostream>
#include<stdio.h>
using namespace std;
int main() {
    int n =26;
    int changes[5] = { 1,5,10,25,50 };
    int **dp = new int*[5];
    for (int i = 0; i <5; i++) {
        dp[i] = new int[n + 1]();
    }
//生成dp数组
    for (int i = 0; i <5; i++) {
        if(i % dp[0] == 0)
        dp[i][0] = 1;
    }
//初始化第一行
    for (int j = 0; j <n + 1; j++) {
        dp[0][j] = 1;
    }
//初始化第一列
    for (int i = 1; i <5; i++) {
        for (int j = 1; j <n + 1; j++) {
            int num = 0;
            for (int k = 0; k*changes[i] <= j; k++) {
                num += dp[i - 1][j - k * changes[i]];
            }
            dp[i][j] = num;
        }
    }
    cout << dp[4][n];
    return 0;
}
优化部分的理解:
IMG_20180915_111655.jpg

相关文章

  • 背包问题详解

    目录 问题引入 在介绍背包问题之前,我们先来看一个小问题:找零钱问题。 找零钱问题 背包问题的一个浅显版本是找零钱...

  • 找零钱的方案问题

    原理和练习:https://www.nowcoder.com/questionTerminal/84ada2d68...

  • 算法思想之动态规划(三)——找零钱问题

    前言 今天我们继续讨论经典的动态规划问题之找零钱问题。 找零钱问题 问题描述 假设你是一名超市收银员,现有种不同面...

  • 找零钱问题

    问题 这个题目要求编写一段程序实现统一银座超市的找零方案。只需输入要补给顾客的 金额,然后通过程序就可以计算出该金...

  • 硬币找零问题——动态规划

    问题阐述 给定一些面值的硬币(数量不限)和需要找零的金额,求一个找零所需硬币数最少的方案。现实生活中因其面值的特殊...

  • 最小硬币找零问题

    最小硬币找零问题是硬币找零问题的一个变种。硬币找零问题是给出要找零的钱数,以及可以用的硬币面额d1...dn及其数...

  • 找零问题

  • 算法思想之动态规划(五)——最小编辑距离问题

    前言 今天我们继续讨论经典的动态规划问题之最小编辑距离问题。 找零钱问题 问题描述 对于两个字符串A和B,我们需要...

  • 零钱找零

    零钱找零问题,题目是这样的 例如: 解决这样的问题,可以使用到的方法有贪心算法、暴力递归或lookback、动态规...

  • C++|找零钱的有效方案数量

    小明钱包里装着各种纸币。纸币有4种(纸币的类型有1元、3元、5元和10元),每一种分别有a、b、c、d张。现在小明...

网友评论

      本文标题:找零钱的方案问题

      本文链接:https://www.haomeiwen.com/subject/nrapgftx.html