https://leetcode-cn.com/problems/add-two-numbers/
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val=0, next=None):
# self.val = val
# self.next = next
class Solution:
def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
jin = 0
pre = l1
f1 = l1
f2 = l2
while f1 != None and f2 != None:
va = f1.val + f2.val + jin
pre = f1
if va >= 10:
f1.val = va % 10
jin = 1
else:
jin = 0
f1.val = va
f1 = f1.next
f2 = f2.next
while f1 != None:
if f1.val + jin >= 10:
jin = 1;
f1.val = (f1.val + jin) % 10
else:
f1.val = f1.val + jin
jin = 0
pre = f1
f1 = f1.next
while f2 != None:
if f2.val + jin >= 10:
f2.val = (f2.val+jin)%10
jin = 1
else:
f2.val = f2.val + jin
jin = 0
pre.next = f2
pre = f2
f2 = f2.next
if jin != 0:
n1 = ListNode()
n1.val = jin
n1.next = None
pre.next = n1
return l1