Подход мемоизации работает, но Tabultion терпит неудачу в определенной проблеме. Почему? - PullRequest
0 голосов
/ 25 марта 2020

ссылка на проблему: https://leetcode.com/problems/target-sum/ Я попытался сделать это с помощью подходов сверху вниз и снизу вверх. Сверху вниз работал, но снизу вверх не получилось. Скажите, пожалуйста, почему. Подход сверху вниз ->

class Solution {
public:

    int findTargetSumWays(vector<int>& nums, int S) 
    {
        int sum=accumulate(nums.begin(),nums.end(),0);
        if((sum+S)%2!=0)
            return false;
        int target=(sum+S)/2;
        if(target>sum)
            return false;
        int n=nums.size();
        vector<int> sumrecord(sum+1,0);
        sumrecord[0]=1;
        for(int i=0;i<n;i++)
            for(int j=target;j>=nums[i];j--)
            {
                sumrecord[j]+=sumrecord[j-nums[i]];
            }
        return sumrecord[target];
    }
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...