import java.io.*;
import java.util.*;
class Main
{
public static int binarySearch(int[] nums,int target)
{
int n=nums.length;
int low=0;
int high=n-1;
while(low<=high)
{
int mid=(low+high)/2;
if(nums[mid]==target)
{
return mid;
}
else if(nums[mid]<target)
{
low=mid+1;
}
else
{
high=mid-1;
}
}
return -1;
}
public static int search(int[] nums,int low,int high,int target)
{
if(low>high)
{
return -1;
}
int mid=(low+high)/2;
if(nums[mid]==target)
{
return mid;
}
else if(target>nums[mid])
{
return search(nums,mid+1,high,target);
}
else
{
return search(nums,low,mid-1,target);
}
}
public static int binarySearch1(int[] nums,int target)
{
return search(nums,0,nums.length-1,target);
}
public static void main(String args[])
{
int nums[] = {1,2,3,4,5,6,9,100};
int target=78;
int found = binarySearch(nums,target);
int found1=binarySearch1(nums,target);
if(found==-1)
{
System.out.println("Element not found");
}
else
{
System.out.println("Element Found");
}
if(found1==-1)
{
System.out.println("Element not found");
}
else
{
System.out.println("Element found");
}
}
}