zoukankan      html  css  js  c++  java
  • 动态规划问题

    动态规划的核心思想是将大问题化为若干小问题来解决,看了一些博客一般会用递归来解,但是不管是递归还是递推都是这种算法表现的形式,研究了一位大佬做的一道题发现很巧妙。

    某小红薯在小红书的活动中抽奖中了一定价值的薯券,这些薯券可以用来购买一批商品,求有多少种购买组合。其中一件商品可以买多件。

    输 入:薯券金额、商品分别价格
    输出 :组合数
    例子:10 [2,3,5]
    他的题解:
                dp[0]=1;
                for (int i : arr) {                    //arr为商品价格数组
                    for (int j = i; j <= totalPrice; j++) {       //totalPrice为薯券值
                        dp[j]+=dp[j-i];
                    }
                }

    dp[j]为薯券为j时的组合数,可以说十分的巧妙了

  • 相关阅读:
    Socket编程
    jdbc03 使用servlet实现
    el和jstl
    java03变量和基本数据类型
    java02
    ssh整合
    U1总结
    多线程
    spring07 JDBC
    cocos2dx中的三种基本的数据类型
  • 原文地址:https://www.cnblogs.com/freven/p/13532742.html
Copyright © 2011-2022 走看看