Advertisement
kosievdmerwe

Untitled

Mar 9th, 2022
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.79 KB | None | 0 0
  1. # Definition for singly-linked list.
  2. # class ListNode:
  3. #     def __init__(self, val=0, next=None):
  4. #         self.val = val
  5. #         self.next = next
  6. ZERO = ListNode()
  7.  
  8. class Solution:
  9.     def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
  10.         head = tail = None
  11.        
  12.         carry = 0
  13.         while l1 or l2:
  14.             d = (l1 or ZERO).val + (l2 or ZERO).val + carry
  15.             carry = d // 10
  16.             d %= 10
  17.            
  18.             l1 = (l1 or ZERO).next
  19.             l2 = (l2 or ZERO).next
  20.            
  21.             if not head:
  22.                 head = tail = ListNode(d)
  23.             else:
  24.                 tail.next = tail = ListNode(d)
  25.                
  26.         if carry != 0:
  27.             tail.next = ListNode(carry)
  28.            
  29.         return head
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement