(x)trqS.69
2016-02-04 11:29
295 查看
problem:https://leetcode.com/problems/sqrtx/
tips:
二分法的应用,注意start<=end作为条件。
int,unsigned int 的溢出问题,如果mid * mid 与x作比较,是错误的,因为 mid *mid可能会大于2^32-1,导致unsigned int溢出,比较的结果就不正确。
最后,start、end、mid停在何处,哪一个需要记录输出?
其实,如果找到一个 mid < x/mid 但是 mid+1 > x/(mid+1);则可以直接输出结果,并且这个mid是一定存在的。
tips:
二分法的应用,注意start<=end作为条件。
int,unsigned int 的溢出问题,如果mid * mid 与x作比较,是错误的,因为 mid *mid可能会大于2^32-1,导致unsigned int溢出,比较的结果就不正确。
最后,start、end、mid停在何处,哪一个需要记录输出?
其实,如果找到一个 mid < x/mid 但是 mid+1 > x/(mid+1);则可以直接输出结果,并且这个mid是一定存在的。
相关文章推荐
- 杭电1075——What Are You Talking About(字典树应用)
- 如何添加或删除ubuntu用户和组【转】
- lua 类实现
- cat 命令
- java代理
- 用chardet判断字符编码的方法
- Retrofit网络请求框架要点总结
- linux 用户操作的相关命令
- java 显示目录下全部文件
- Wireless Network(POJ 2236)
- Python元祖,列表,字典,集合的比较
- 大概看了一天python request源码。写下python requests库发送 get,post请求大概过程。
- 正则表达式同时匹配中英文_,还控制长度
- Spark分布式搭建(2)——ubuntu14.04下修改hostname和hosts
- 开源的 OnlineJudge
- Android Studio错误代码不提示问题解决
- hdu acm 2444 The Accomodation of Students
- JavaScript类型、值和变量2
- hdu 1564 Play a game 巴什博弈/棋盘博弈问题
- Tomcat的Session管理(二) - Session后台处理