[编程题]不用加减乘除做加法
- 热度指数:54917时间限制:1秒空间限制:32768K
- 算法知识视频讲解
写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
c++实现:
class Solution {
public:
int Add(int num1, int num2)
{
int t = 0;
if((num1 >= 0) && (num2 >= 0))
{
for(int i = 0; i < num1; i ++)
t ++;
for(int i = 0; i < num2; i ++)
t ++;
}
else if((num1 < 0) && (num2 > 0))
{
for(int i = 0; i < num2; i ++)
t ++;
for(int i = 0; i < abs(num1); i ++)
t --;
}
else if((num1 > 0) && (num2 < 0))
{
for(int i = 0; i < num1; i ++)
t ++;
for(int i = 0; i < abs(num2); i ++)
t --;
}
else
{
for(int i = 0; i < abs(num1); i ++)
t --;
for(int i = 0; i < abs(num2); i ++)
t --;
}
return t;
}
};
Python实现:
# -*- coding:utf-8 -*-
class Solution:
def Add(self, num1, num2):
# write code here
return sum([num1, num2])