动态规划,多重背包,保存路径,用完全背包的方法做多重背包(Charlie's Change,poj 1787)
就是用拆分物品的方法做的多重背包啦,时间复杂度为O(V∑logN[i]),空间复杂度为O(V)。由于是拆分物品,所以保存路径时不但要记录转移前的位置,还要记录当前硬币的类型以及使用的个数,输出前沿着路径找回去统计一下个数就好啦。一直WA不知所措,以为是算法问题一直找BUG,后来发现原来是一个quarters本来是25cents抄成了15cents。最后是自己带数据去测试才找到问题所在。写了这么多题
原创
2017-01-17 15:16:22 ·
1314 阅读 ·
0 评论