NumPy allowed · plain Python earns 10 bonus points
Determine if an array can be split into two subsets with identical sum using 0/1 knapsack dynamic programming.
Implement can_partition_equal_subset(nums): if total sum is odd, return False. Otherwise solve 0/1 knapsack for target = sum // 2 using a boolean DP array traversed in reverse.
can_partition_equal_subset(nums: list[int]) -> bool