int main() { Solution s; vector<int> nums1({1}); vector<int> nums2({1, 1}); cout << s.intersect(nums1, nums2) << endl; return 0; }
void MedianOfTwoSortedArrays::TestClass() { int Array1[1]={}; int Array2[2]={2,3}; vector<int> nums1(Array1,Array1); vector<int> nums2(Array2,Array2+2); double res=findMedianSortedArrays(nums1,nums2); cout<<"median="<<res<<endl; }
int rob(vector<int>& nums) { if (0 == nums.size()) { return 0; } if (1 == nums.size()) { return nums[0]; } vector<int> nums1(nums.begin() + 1, nums.end()); nums.pop_back(); return max(rob1(nums), rob1(nums1)); }
int main(){ int arr[] = {}; int arr2[] = {1,2,3,4,5}; vector<int>nums1( arr, arr + sizeof(arr) /sizeof(int)); nums1.push_back(0); nums1.push_back(0); nums1.push_back(0); nums1.push_back(0); nums1.push_back(0); vector<int>nums2( arr2, arr2 + sizeof(arr2) /sizeof(int)); merge(nums1, 0, nums2, 5); printVector(nums1); return 0; }
int main(){ vector<vector<int> > grid; int arr[] = {3,5,1,2,4}; vector<int> nums( arr, arr+ sizeof(arr)/sizeof(int)); grid.push_back(nums); int arr1[] = {3,5,1,2,4}; vector<int> nums1( arr1, arr1+ sizeof(arr1)/sizeof(int)); grid.push_back(nums1); int arr2[] = {3,5,1,2,4}; vector<int> nums2( arr2, arr2+ sizeof(arr2)/sizeof(int)); grid.push_back(nums2); cout<< minPathSum(grid)<<endl; return 0; }
string multiply(string num1, string num2) { int n = num1.size(); int m = num2.size(); string ret(n + m, '0'); vector<int> nums1(n); vector<int> nums2(m); vector<int> nums3(m + n, 0);; for (int i = 0; i < n; i++)nums1[i] = num1[n - i - 1] - '0'; for (int i = 0; i < m; i++)nums2[i] = num2[m - i - 1] - '0'; for (int i = 0; i < num1.size(); i++) for (int j = 0; j < num2.size(); j++) { nums3[i + j] += nums1[i] * nums2[j]; nums3[i + j + 1] += nums3[i + j] / 10; nums3[i + j] %= 10; } for (int i = 0; i<n + m; i++) ret[i] += nums3[i]; int index = ret.size(); while (index>1 && ret[--index] == '0') ret.pop_back(); reverse(ret.begin(), ret.end()); return ret; }
int rob(vector<int>& nums) { //rob houses from 0 to n-2 and from 1 to n-1 //the max of these two is the answer int size = nums.size(); if (size == 0){ return 0; } if (size == 1) { return nums[0]; } vector<int> nums1(size-1,0); vector<int> nums2(size-1,0); for (int i = 0; i<size-1; i++) { nums1[i] = nums[i]; } int j=0; for (int i=1;i<size;i++) { nums2[j++] = nums[i]; } int rob1 = rob_new(nums1); int rob2 = rob_new(nums2); return max(rob1,rob2); }