Leetcode Weekeek16
来源:互联网 发布:js加载页面时自动执行 编辑:程序博客网 时间:2024/06/15 11:47
Divide Two Integers
Divide two integers without using multiplication, division and mod operator.
If it is overflow, return MAX_INT.
1)考虑边界问题。
2)考虑INT_MIN与INT_MAX绝对值之间差1。
Divide two integers without using multiplication, division and mod operator.
If it is overflow, return MAX_INT.
1)考虑边界问题。
2)考虑INT_MIN与INT_MAX绝对值之间差1。
3)考虑符号。
class Solution {public: int divide(int dividend, int divisor) { if(dividend==0||divisor==0) { return 0; } if(dividend==INT_MIN && divisor==-1) return INT_MAX; bool positive=true; if(dividend>0 && divisor<0) { positive = false; } if(dividend<0 && divisor>0) { positive = false; } int x=dividend; int y=divisor; int result = 0; if(divisor==INT_MIN) { return dividend==INT_MIN?1:0; }else if(divisor<0) { y=-divisor; } if(dividend==INT_MIN) { x=INT_MAX-y+1; result+=1; }else if(dividend<0) { x=-dividend; } while(x>=y) { int sum = y; int count=1; while(sum <= x - sum) { count += count; sum += sum; }; x -= sum; result+=count; }; return (positive?1:-1)*result; } };
阅读全文
0 0
- Leetcode Weekeek16
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode
- leetcode:
- leetcode:
- LeetCode
- leetcode
- LEETCODE
- leetcode
- leetCode
- leetcode
- [leetcode]
- LeetCode
- leetcode
- leetcode:
- 阿里云centos ECS服务器修改iptables后,tomcat通过ip加端口8080 仍然无法访问8080端口
- Linux SPI 子系统驱动程序开发笔记
- 刘昕明:送给和我一样曾经浮躁过的PHP程序员
- 网格布局的演示代码
- 一张图让你明白C++的重载(overload),重写(override)与重定义(redefine)
- Leetcode Weekeek16
- CSDN博客首行空两格
- Linux编程学习之线程篇-Mutex的死锁
- 浅谈敏捷开发
- mysql copy to tmp on disk
- touch事件中的touches、targetTouches和changedTouches详解
- oracle RAC 11g更改ASM磁盘路径
- ROS编程示例---输出消息
- 20170606组队赛比赛总结