I am getting TLE in problem BBIN - Busqueda Binaria
My code- Implemented binary search to find least index where item can be found still i m getting tle
#include
using namespace std;
int binary_search(long long int *A,int k,int beg ,int end)
{
if (A[beg]==k)
return beg;
if (A[end]==k)
return end;
if (beg==end)
{
return -1;
}
int mid=(beg+end)/2;
if (A[mid]==k)
{
if (A[mid-1]==k)
return binary_search(A,k,beg,mid-1);
return mid;
}
if (A[mid]>k)
return binary_search(A,k,beg,mid-1);
return binary_search(A,k,mid+1,end);
}
int main()
{
/*ios_base::sync_with_stdio(false);
cin.tie(NULL);*/
int n,k;
//cin>>n>>k;
scanf("%d %d",&n,&k);
long long int *A =new long long int[n];
for (int i=0;i<n;i++)
scanf("%lld",&A[i]);
//cin>>A[i];
//sort(A,A+n);
while (k--)
{
long long int x;
//cin>>x;
scanf("%lld",&x);
int i=binary_search(A,x,0,n-1);
printf("%d\n",i);
}
return 0;
}