"""   
   You are given two non-empty linked lists representing two non-negative integers. 
   The most significant digit comes first and each of their nodes contain a single digit. 
   Add the two numbers and return it as a linked list.
   
   Idea: reverse lists:
   
           n1 -> n2 - > n3
                 |   
   last   head   tmp
   (use shifted 3-node list)
   
   add reversed lists
   
   
"""

class Solution445:
    pass

"""   
   You are given two non-empty linked lists representing two non-negative integers. 
   The most significant digit comes first and each of their nodes contain a single digit. 
   Add the two numbers and return it as a linked list.
   
   Idea: reverse lists:
   
           n1 -> n2 - > n3
                 |   
   last   head   tmp
   (use shifted 3-node list)
   
   add reversed lists
   
   
"""

class Solution445:
    pass

You are given two non-empty linked lists representing two non-negative integers.     The most significant digit comes first and each of their nodes contain a single digit.     Add the two numbers and return it as a linked list.        Idea: reverse lists:                n1 -> n2 - > n3                  |       last   head   tmp    (use shifted 3-node list)        add reversed lists