class Solution {
public:
int sqrt(int x) {
if(x<=1) return x;
int left=0;
int right=x;
while(left<=right)
{
int middle=(left+right)/2;
if(middle==x/middle)
return middle;
else if(middle<x/middle)
left=middle+1;
else if(middle>x/middle)
right=middle-1;
}
int lastmiddle=(left+right)/2;
return lastmiddle;
}
};
public:
int sqrt(int x) {
if(x<=1) return x;
int left=0;
int right=x;
while(left<=right)
{
int middle=(left+right)/2;
if(middle==x/middle)
return middle;
else if(middle<x/middle)
left=middle+1;
else if(middle>x/middle)
right=middle-1;
}
int lastmiddle=(left+right)/2;
return lastmiddle;
}
};