Divide Two Integers

来源:互联网 发布:php final static 编辑:程序博客网 时间:2024/05/19 07:25
long long internalDivide(unsigned long long dividend,unsigned long long divisor){if (dividend<divisor){return 0;}long long result = 1;unsigned long long tmp = divisor,left;while (tmp<=dividend){left=dividend-tmp;tmp<<1;if(tmp>dividend){break;}else{result<<=1;}}return result+internalDivide(left,divisor);}int divide(int dividend, int divisor) {unsigned long long _dividend = abs((long long)dividend), _divisor = abs((long long)divisor);bool positive = ((dividend >= 0) && (divisor > 0)) || ((dividend <= 0) && (divisor < 0));return positive ? internalDivide(_dividend, _divisor) : (-1) * internalDivide(_dividend, _divisor);}

0 0
原创粉丝点击