Code working properly in VS code for every test case but assigned wrong when submitted why?


Joined
Aug 21, 2022
Messages
1
Reaction score
0
code studio Problem :

Search In Rotated Sorted Array​



the code i submitted is:

int pivot(vector<int>& arr, int n){
int s = 0;
int e = n-1;
int mid = s + (e-s)/2;
while(s<e){
if(arr[mid] >= arr[0]){
s = mid + 1;
}
else{
e = mid;
}
mid = s + (e-s)/2;
}
return s;
}

int search(vector<int>& arr, int k, int s, int e){
while(s<=e){
int mid = s + ((e-s)/2);
if(k == arr[mid]){
return mid;
}
else if(k>arr[mid]){
s=mid+1;
}
else if(k<arr[mid]){
e = mid-1;
}
}
return -1;
}

int findPosition(vector<int>& arr, int n, int k)
{
// Write your code here.
// Return the position of K in ARR else return -1.
int p = pivot(arr,n);
int s;
if(k>=arr[p] && k<=arr[n-1]){
s = search(arr,k,p,n-1);
}
else{
s = search(arr,k,0,p-1);
}
return s;
}




//condition applied in findposition function here is

if(k>=arr[p] && k<=arr[n-1]){
s = search(arr,k,p,n-1);
}
else{
s = search(arr,k,0,p-1);
}







but before it when i wrote code in vscode i used the condition

if(k == arr[p]){

s = p;

}

else if(k>arr[0]){

s = search(arr,n,k,0,p-1);

}

else if(k<arr[0]){

s = search(arr,n,k,p+1,n-1);

}



this condition was properly working there for every case i checked even the sample cases of this problem were working



but here in code studio this was not showing correct ans with this condition



can some one explain why
 
Ad

Advertisements


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top