leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

1035.cpp (605B)


0 class Solution { 1 int dp[500][500]; 2 3 public: 4 Solution() { memset(dp, 0xFF, sizeof(dp)); } 5 6 int maxUncrossedLines(const vector<int> &nums1, const vector<int> &nums2, int i = 0, int j = 0) { 7 if (i >= nums1.size() || j >= nums2.size()) return 0; 8 if (dp[i][j] != -1) return dp[i][j]; 9 10 int res; 11 if (nums1[i] == nums2[j]) 12 res = 1 + maxUncrossedLines(nums1, nums2, i + 1, j + 1); 13 else { 14 res = max(maxUncrossedLines(nums1, nums2, i + 1, j), maxUncrossedLines(nums1, nums2, i, j + 1)); 15 } 16 17 return dp[i][j] = res; 18 } 19 };