leetcode-29.两数相除(不用乘除法和mod)

如题,不用乘除法和mod实现两数相除。

这里引用一位clever boy 的解法。

 1 class Solution {
 2 public:
 3     int divide(int dividend, int divisor) {
 4         long long res = 0;
 5         if(dividend == 0)
 6             return 0;
 7         if(divisor == 0)
 8             return INT_MAX;
 9         res = exp(log(llabs(dividend)) - log(llabs(divisor)));
10         if((dividend < 0) ^ (divisor < 0))
11             res = -res;
12         if(res > INT_MAX)
13             res = INT_MAX;
14         return res;
15     }
16 };

数学大法好!!!

全部评论

相关推荐

有气魄的马来熊在摸鱼:我爱vivo 马上换手机 vivo我爱你!!!
点赞 评论 收藏
分享
StephenZ_:我9月份找的第一段实习也是遇到这种骗子公司了,问他后端有多少人和我说7个正职,进去一看只有一个后端剩下的都是产品前端算法(没错甚至还有算法)。还是某制造业中大厂,我离职的时候还阴阳怪气我
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务