Divide Two Integers 没做出来需要重新看(((((重重重重))))))!!!!!!!!!!!!!

来源:互联网 发布:smtp协议端口号 编辑:程序博客网 时间:2024/05/19 16:50

题目:

点击打开链接


别人的通过代码:

class Solution {public:int divide(int dividend, int divisor) {// Note: The Solution object is instantiated only once.long long a = abs((double)dividend);long long b = abs((double)divisor);long long res = 0;while (a >= b){long long c = b;for (int i = 0; a >= c; i++, c <<= 1)  //除数不断地*2  直到大于被除数{a -= c;  //减去除数res += 1 << i;  //除数*2多少次   结果就要增加多少次}}return ((dividend ^ divisor) >> 31) ? (-res) : (res);}};


0 0
原创粉丝点击