for (int i = 0; i < len; i++) {
        for (int j = sum; j >= nums[i]; j--) {
            dp[j] = dp[j] | dp[j - nums[i]];
        }
    }
    return dp[sum];
}
这个判断神奇数的代码什么意思?