作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想知道以下问题是否是 NP 完全问题,或者是否有解决它的特定算法:
假设您有一定数量的钱,例如 30 欧元,有特定值(value)的硬币和纸币(0.01 欧元、0.05 欧元、5.00 欧元...)。
我们拥有的硬币和钞票的数量是给定的,您必须将其分配给A、B、C、等等
您希望A 有一定数量的钱(例如 10 欧元),B 有不同或相等的数量,等等。
“需要”的钱的总和并不大于我们拥有的钱。
那么,问题是:是否存在这样一种硬币和钞票的分配方式,使得每个人都拥有属于他的货币数量?
提前致谢!
最佳答案
可以将此问题的实例简化为 Bin Packing(通过使 A=B=C=...)或 Knapsack(通过只有 A 和 B,且 B=total-A)。众所周知,Bin Packing 和 Knapsack 都是 NP 完全的。
关于algorithm - 代币分配练习——它是 NP 完全的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21125866/
我是一名优秀的程序员,十分优秀!