Divide Two Integers 两个整数相除

来源:互联网 发布:淘宝用什么快递单打印 编辑:程序博客网 时间:2024/05/16 07:59
class Solution {
public:
    int divide(int dividend, int divisor) {
         bool sign=(dividend<0&&divisor>0)||(dividend>0&&divisor<0);
        long long a=abs((double)dividend);
        long long b=abs((double)divisor);
        long long ret=0;
       
        while(a>=b)
        {
            long long c=b;
            for(int i=0;a>=c;i++,c<<=1)
            {
                a-=c;
                ret+=1<<i;
            }
        }
        if(sign) return -ret;
        else return ret;
    }
};
0 0
原创粉丝点击