double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {
int num1=0,num2=0;
int len=nums2.size()<nums1.size()?nums1.size():nums2.size();
int sum=(nums1.size()+nums2.size())/2;
int a=(nums1.size()+nums2.size())&1^1;
int *q=new int[sum+1];
for(int i=0;i<sum+1;i++)
{
if(nums1.empty()||nums2.empty()){
q[i]=nums1.empty()?nums2[num2++]:nums1[num1++];
}
else{
q[i]=nums1[num1]<nums2[num2]?(num1+1>nums1.size()?nums2[num2++]:nums1[num1++]):(num2+1>nums2.size()?nums1[num1++]:nums2[num2++]);
}
}
double n=a?((double)q[sum]+q[sum-1])/2:q[sum];
delete[] q;
return n;
}