想出多项式算法

Come up with polynomial algorithm

给定 n 张支票,每张支票都是任意(整数)货币价值,决定是否可以将这些支票分成具有相同货币价值的两部分。

我完全不知道如何解决这个问题。有没有一种算法可以在多项式时间内解决这个问题,或者这个是 NP 完全的?

是的,这是一个 NP 完全问题。它是 the subset sum problem.

的变体

实际上你可以使用动态规划在 O(n*sum/2) 中解决这个问题,首先将所有检查汇总为一个 varaibel 和,然后你可以对检查值执行 dp(接受或离开它或接受它)并在最后检查该总和是否等于 s/2.