class Solution {
public:
int divide(int dividend, int divisor) {
if(divisor==0||(dividend==INT_MIN&&divisor==-1))
return INT_MAX;
int sign=(dividend<0^divisor<0)?-1:1;
int result=0;
long long dividend1=labs(dividend);
long long divisor1=labs(divisor);
while(dividend1>=divisor1)
{
long long temp=divisor1;
long long mili=1;
while(dividend1>=(temp<<1))
{
temp<<=1;
mili<<=1;
}
dividend1-=temp;
result+=mili;
}
return result*sign;
}
};
29. Divide Two Integers
最新推荐文章于 2022-05-31 11:11:52 发布