
In a Meta-style coding interview, implement a function that finds two distinct elements in an integer array whose sum equals a given target. Return their indices, not the values.
nums: a list of integerstarget: an integer[i, j] such that nums[i] + nums[j] == target and i != jYou may assume exactly one valid answer exists, and you may not use the same element twice.
Example 1
nums = [2, 7, 11, 15], target = 9[0, 1]nums[0] + nums[1] = 2 + 7 = 9Example 2
nums = [3, 2, 4], target = 6[1, 2]nums[1] + nums[2] = 2 + 4 = 6Example 3
nums = [3, 3], target = 6[0, 1]3 values are at different indices, so both can be used.2 <= len(nums) <= 10^5-10^9 <= nums[i] <= 10^9-10^9 <= target <= 10^9nums = [2, 7, 11, 15], target = 9Output[0, 1]WhyThe values at indices 0 and 1 add to 9.nums = [3, 2, 4], target = 6Output[1, 2]WhyThe values 2 and 4 sum to 6, so return their indices.nums = [0, 4, 3, 0], target = 0Output[0, 3]WhyThe two zero values are at different indices and together sum to 0.2 <= len(nums) <= 10^5-10^9 <= nums[i] <= 10^9-10^9 <= target <= 10^9Exactly one valid answer existsYou may not use the same element twicedef two_sum(nums, target):