题目
就是,只利用加号,来实现四则运算!
思路
加法直接返回结果;乘法就将小的那个数作为遍历的值,大的那个值作为累加值;减法的话,因为减去一个数,可以利用补码来进行运算,除法就是做了多次减法而已!
代码
/**
* 利用加法来实现四则运算
*
*/
class Solution{
// 加法
public int sum(int a,int b)
{
return a+b;
}
// 减法
public int sub(int a,int b)
{
return a+ ~b+1;
}
// 乘法
public int mul(int a,int b)
{
int min = Math.min(a,b);
int max = Math.max(a,b);
int ans =0;
for (int i=0;i<min;++i)
{
ans+=max;
}
return ans;
}
// 除法
public int div(int a,int b)
{
int ans=0;
while (sub(a,b)>=0)
{
++ans;
a+=~b+1;
}
return ans;
}
}