第31264题 单选题
现有无限张面额分别为1、2、5的硬币,要求计算凑成总金额5的不同排列数目(顺序不同视为不同方案,如1+2和2+1属于两种不同方案),该问题属于完全背包变种,下列实现逻辑描述正确的是?

普通完全背包问题默认求最大价值或不考虑顺序的组合数,本题考查完全背包求排列数的核心差异点。

A

外层遍历背包容量从小到大,内层遍历硬币面额,dp数组定义为dp[i]表示凑成金额i的排列数,初始dp[0]=1,转移方程为dp[i] += dp[i - coin](当i >= coin时),该实现可得到正确结果

B

外层遍历硬币面额,内层遍历背包容量从小到大,其余逻辑同选项A,该实现可得到正确结果

C

为了避免硬币被重复计数,内层遍历背包容量必须从大到小,其余逻辑同选项A,该实现可得到正确结果

D

该问题需要考虑选择顺序,无法基于完全背包模型求解,只能通过回溯法暴力枚举所有方案统计结果

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析