团队建设海报网站,seo研究中心南宁线下,中国建设银行校园招聘网站,老板让我做镜像网站犯法吗给定两个整数#xff0c;被除数 dividend 和除数 divisor。将两数相除#xff0c;要求不使用乘法、除法和 mod 运算符。
返回被除数 dividend 除以除数 divisor 得到的商。
整数除法的结果应当截去#xff08;truncate#xff09;其小数部分#xff0c;例如#xff1a;…给定两个整数被除数 dividend 和除数 divisor。将两数相除要求不使用乘法、除法和 mod 运算符。
返回被除数 dividend 除以除数 divisor 得到的商。
整数除法的结果应当截去truncate其小数部分例如truncate(8.345) 8 以及 truncate(-2.7335) -2
示例 1:
输入: dividend 10, divisor 3 输出: 3 解释: 10/3 truncate(3.33333…) truncate(3) 3
代码
class Solution {public int divide(int dividend, int divisor) {if(dividendInteger.MIN_VALUEdivisor-1) return Integer.MAX_VALUE;//特例int sum0,ans0,a -Math.abs(dividend),b -Math.abs(divisor);boolean samefalse;if(((dividend31)^(divisor31))1) samefalse;//判断符号else sametrue;while (ab){int tempb,c1;while (a-temptemp)//减去尽可能多的divisor{temptemp1;//divisor总数x2cc1;//divisor数量x2}ansc;//记录已经减去多少个divisor了a-temp;}if(!same) ans0-ans;return ans;}
}