class Solution {
public:
int core(int A[], int beg, int end, int target) {
if (beg==end && A[beg]<target) {
return beg+1;
}
if (beg==end&&A[beg]>target) {
return beg;
}
int mid = (beg+end)/2;
if (A[mid]==target) {
return mid;
}
//int temp1; int temp2;
if (A[mid]>target)
return core(A, beg, mid, target);
if (A[mid]<target)
return core(A, mid+1, end,target);
}
int searchInsert(int A[], int n, int target) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
if (A==NULL || n<1) {
return 0;
}
int beg = 0;
int end = n-1;
core(A, beg, end, target);
}
};
public:
int core(int A[], int beg, int end, int target) {
if (beg==end && A[beg]<target) {
return beg+1;
}
if (beg==end&&A[beg]>target) {
return beg;
}
int mid = (beg+end)/2;
if (A[mid]==target) {
return mid;
}
//int temp1; int temp2;
if (A[mid]>target)
return core(A, beg, mid, target);
if (A[mid]<target)
return core(A, mid+1, end,target);
}
int searchInsert(int A[], int n, int target) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
if (A==NULL || n<1) {
return 0;
}
int beg = 0;
int end = n-1;
core(A, beg, end, target);
}
};