思路:是否能均分,可以转化为是否能够拿出value为sum/2的石子。flag[i]如果为1,则表示能够拿出value为i的石子。所以问题的最终解即为:flag[sum/2]是否为1。
如果存在value为K的石子,且能够拿出value为i的石子,即flag[i] = 1,则肯定也能拿出value为i+K的石子,即flag[i+K]肯定也为1。所以,我们的初始状态是flag[0] = 1,要从它推导出flag[sum/2]是否为1。
思路:是否能均分,可以转化为是否能够拿出value为sum/2的石子。flag[i]如果为1,则表示能够拿出value为i的石子。所以问题的最终解即为:flag[sum/2]是否为1。
如果存在value为K的石子,且能够拿出value为i的石子,即flag[i] = 1,则肯定也能拿出value为i+K的石子,即flag[i+K]肯定也为1。所以,我们的初始状态是flag[0] = 1,要从它推导出flag[sum/2]是否为1。