494. Target Sum
class Solution { public: unordered_map<string, int> dp; int findTargetSumWays(vector<int>& nums, int S) { return helper(nums, S, 0); } int helper(vector<int>& nums, int S, int start) { string key = to_string(S) + ":" + to_string(start); if (dp.find(key) != dp.end()) return dp[key]; if (start == nums.size()) { return S == 0; } int res = helper(nums, S-nums[start], start+1) + helper(nums, S+nums[start], start+1); return dp[key] = res; } };
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步