Given two integers num1
and num2
, return the sum of the two integers.
Example 1:
Input: num1 = 12, num2 = 5 Output: 17 Explanation: num1 is 12, num2 is 5, and their sum is 12 + 5 = 17, so 17 is returned.
Example 2:
Input: num1 = -10, num2 = 4 Output: -6 Explanation: num1 + num2 = -6, so -6 is returned.
Constraints:
-100 <= num1, num2 <= 100
class Solution:
def sum(self, num1: int, num2: int) -> int:
return num1 + num2
class Solution {
public int sum(int num1, int num2) {
return num1 + num2;
}
}
class Solution {
public:
int sum(int num1, int num2) {
return num1 + num2;
}
};
func sum(num1 int, num2 int) int {
return num1 + num2
}
function sum(num1: number, num2: number): number {
return num1 + num2;
}
impl Solution {
pub fn sum(num1: i32, num2: i32) -> i32 {
num1 + num2
}
}
int sum(int num1, int num2) {
return num1 + num2;
}
class Solution:
def sum(self, num1: int, num2: int) -> int:
num1, num2 = num1 & 0xFFFFFFFF, num2 & 0xFFFFFFFF
while num2:
carry = ((num1 & num2) << 1) & 0xFFFFFFFF
num1, num2 = num1 ^ num2, carry
return num1 if num1 < 0x80000000 else ~(num1 ^ 0xFFFFFFFF)
class Solution {
public int sum(int num1, int num2) {
while (num2 != 0) {
int carry = (num1 & num2) << 1;
num1 ^= num2;
num2 = carry;
}
return num1;
}
}
class Solution {
public:
int sum(int num1, int num2) {
while (num2) {
unsigned int carry = (unsigned int) (num1 & num2) << 1;
num1 ^= num2;
num2 = carry;
}
return num1;
}
};
func sum(num1 int, num2 int) int {
for num2 != 0 {
carry := (num1 & num2) << 1
num1 ^= num2
num2 = carry
}
return num1
}
function sum(num1: number, num2: number): number {
while (num2) {
const carry = (num1 & num2) << 1;
num1 ^= num2;
num2 = carry;
}
return num1;
}
impl Solution {
pub fn sum(num1: i32, num2: i32) -> i32 {
let mut num1 = num1;
let mut num2 = num2;
while num2 != 0 {
let carry = (num1 & num2) << 1;
num1 ^= num2;
num2 = carry;
}
num1
}
}