LeetCode 29. Divide Two Integers
来源:互联网 发布:用算法实现100以内质数 编辑:程序博客网 时间:2024/06/05 04:09
29. Divide Two Integers
Divide two integers without using multiplication, division and mod operator.
If it is overflow, return MAX_INT.
题目大意:不用乘法、除法、取余操作,将两个数相除,如果它溢出了,返回MAX_INT~
分析:我用了减法和log函数。。就是e的(loga-logb)次方等于e的log(a/b) = a/b。。。。这应该不算投机取巧吧?。。。~
class Solution {public: int divide(int dividend, int divisor) { if(divisor == 0 || dividend == INT_MIN && divisor == -1) return INT_MAX; int sign = ((dividend >> 31) ^ (divisor >> 31)) == 0 ? 1 : -1; long a = abs((long)dividend); long b = abs((long)divisor); double c = exp(log(a) - log(b)) + 0.0000000001; return (int)(sign * c); }};
0 0
- [LeetCode]29.Divide Two Integers
- LeetCode --- 29. Divide Two Integers
- LeetCode 29.Divide Two Integers
- [Leetcode] 29. Divide Two Integers
- 【leetcode】29. Divide Two Integers
- *LeetCode 29. Divide Two Integers
- leetcode 29. Divide Two Integers
- leetcode 29. Divide Two Integers
- [LeetCode]29. Divide Two Integers
- LeetCode 29. Divide Two Integers
- LeetCode 29. Divide Two Integers
- leetcode 29. Divide Two Integers
- LeetCode-29.Divide Two Integers
- leetcode 29. Divide Two Integers
- leetcode 29. Divide Two Integers
- [leetcode]29. Divide Two Integers
- leetcode 29. Divide Two Integers
- LeetCode - 29. Divide Two Integers
- 机器学习基础 第一章 机器学习概述
- macOS Sierra安装Apache2.4+PHP7.0+MySQL5.7.17
- 【爬虫笔记】爬虫入门
- 杭电 2026 ( 首字母变大写 ) java
- android:圆形进度条的实现
- LeetCode 29. Divide Two Integers
- openvpn
- Sort Characters By Frequency
- (八) play之yabe项目 【身份验证】
- mysql 数据迁移
- 微信小程序开发者工具详解
- 重装系统后jdk+eclipse+tomcat配置
- 杭电 2027 ( 统计元音 ) java
- 剑指Offer-面试题41-和为s 的两个数字vs 和为s 的连续正数序列