a = input()
b = input()
c = input()
result = 0
r = len(a) - 1
active = [False] * (len(a) + 1)
acc = 0
for l in range(len(a)-1, -1, -1):
# print(active)
if active[l+1]:
acc -= 1
if (int(a[l]) + int(b[l])) % 10 != int(c[l]):
continue
if l <= r:
acc = 0
r = l
carry = 0
while r >= 0:
if (int(a[r]) + int(b[r]) + carry) % 10 != int(c[r]):
break
else:
if int(a[r]) + int(b[r]) + carry >= 10:
carry = 1
else:
active[r] = True
acc += 1
carry = 0
r -= 1
result += acc
# print(l, acc)
print(result)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | a = input() b = input() c = input() result = 0 r = len(a) - 1 active = [False] * (len(a) + 1) acc = 0 for l in range(len(a)-1, -1, -1): # print(active) if active[l+1]: acc -= 1 if (int(a[l]) + int(b[l])) % 10 != int(c[l]): continue if l <= r: acc = 0 r = l carry = 0 while r >= 0: if (int(a[r]) + int(b[r]) + carry) % 10 != int(c[r]): break else: if int(a[r]) + int(b[r]) + carry >= 10: carry = 1 else: active[r] = True acc += 1 carry = 0 r -= 1 result += acc # print(l, acc) print(result) |
English