CMU Coding Bootcamp
1from typing import List
2
3
4def carrylessAdd(x: int, y: int) -> int:
5 """Add two numbers without carrying."""
6 pos: List[int] = []
7 while x > 0 or y > 0:
8 sum = (x % 10 + y % 10) % 10
9 pos.append(sum)
10 x //= 10
11 y //= 10
12 num = 0
13 for idx, val in enumerate(pos):
14 num += val * 10**idx
15 return num
16
17
18print("Testing carrylessAdd()...", end="")
19assert carrylessAdd(8, 7) == 5
20assert carrylessAdd(785, 376) == 51
21assert carrylessAdd(0, 325) == 325
22assert carrylessAdd(30, 873) == 803
23assert carrylessAdd(873, 30) == 803
24assert carrylessAdd(100, 11) == 111
25print("Passed!")