World's Best AI Learning Platform with profoundly Demanding Certification Programs
Designed by IITians, only for AI Learners.
Designed by IITians, only for AI Learners.
New to InsideAIML? Create an account
Employer? Create an account
Requirements
Solution :
For this problem we will take advantage of a set data structure. We will make a single pass through the list of integers, treating each element as the first integer of our possible sum.
At each iteration we will check to see if there is a second integer which will allow us hit the target number, adn we will use a set to check if we've already seen it in our list.
We will then update our seen set by adding the current number in the iteration to it.
def solution(lst,target): # Create set to keep track of duplicates seen = set() # We want to find if there is a num2 that sums with num to reach the target for num in lst: num2 = target - num if num2 in seen: return True seen.add(num) # If we never find a pair match which creates the sum return False solution([1,3,5,1,7],4) True solution([1,3,5,1,7],14) False