TWO NUM
class Solution: # @return a tuple, (index1, index2) def twoSum(self, num, target): dict = {} for i in range(len(num)): x = num[i] if target-x in dict: return (dict[target-x], i) dict[x] = i print(Solution().twoSum(num = [0,2,7,11,15],target=9))
ADD TWO NUM
import math
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class Solution:
def addTwoNumbers(self, l1, l2):
"""
:type l1: ListNode
:type l2: ListNode
:rtype: ListNode
"""
resultNode = None
add= 0
while True:
if l1.val == -1:
l1.val =0
if l2.val ==-1:
l2.val = 0
tSum = (l1.val+l2.val+add)%10
add = math.floor((l1.val+l2.val+add)/10)
listn = ListNode(tSum)
if resultNode ==None:
resultNode =listn
flagNode = resultNode
else:
flagNode.next =listn
flagNode = flagNode.next
if l1.next != None:
l1 = l1.next
else:
l1.val = -1
if l2.next != None:
l2 = l2.next
else:
l2.val = -1
if l1.val ==-1 and l2.val ==-1:
break
if add != 0:
listn = ListNode(add)
flagNode.next =listn
return resultNode