leetcode:Divide Two Integers

来源:互联网 发布:淘宝 实木家具 编辑:程序博客网 时间:2024/06/08 11:24
class Solution {public:    int divide(int dividend, int divisor) {        long long div = dividend,dis = divisor;        div = abs(div);        dis = abs(dis);        long long res = 0;        while(div>=dis)        {            long long temp = dis;            int i = 0;            while(div>=temp)            {                temp = temp<<1;                i++;            }            res += ((long long)1<<(i-1));            div -= (dis<<(i-1));        }        res = ((long long)dividend>0^(long long)divisor>0)?-res:res;        if(res>((1<<31)-1))            return (1<<31)-1;        return res;    }};
0 0
原创粉丝点击