Skip to main content

1. Two Sum

easyAsked at Adyen

Given an array of integers and a target, return indices of two numbers that sum to the target.

By Alex Chen, Founder, InterviewChamp.AI · Last verified

Problem

Given an array of integers nums and an integer target, return indices of two numbers that sum to target. Exactly one solution exists and the same element cannot be used twice.

Constraints

  • 2 <= nums.length <= 10^4
  • -10^9 <= nums[i] <= 10^9
  • Exactly one valid answer.

Examples

Example 1

Input
nums = [2,7,11,15], target = 9
Output
[0,1]

Example 2

Input
nums = [3,2,4], target = 6
Output
[1,2]

Approaches

1. Brute force

Check every pair.

Time
O(n^2)
Space
O(1)
for (let i = 0; i < nums.length; i++) {
  for (let j = i+1; j < nums.length; j++) {
    if (nums[i] + nums[j] === target) return [i,j];
  }
}

Tradeoff:

2. Hash map one-pass

Map complement to index while scanning once.

Time
O(n)
Space
O(n)
function twoSum(nums, target) {
  const map = new Map();
  for (let i = 0; i < nums.length; i++) {
    const c = target - nums[i];
    if (map.has(c)) return [map.get(c), i];
    map.set(nums[i], i);
  }
  return [];
}

Tradeoff:

Adyen-specific tips

Adyen interviewers expect crisp hash-map fluency since amount-to-merchant routing tables underpin every payment lookup in their core processing path.

Solve it now

Free. No sign-up. Python and JavaScript run instantly in your browser.

Output

Press Run or Cmd+Enter to execute

Practice these live with InterviewChamp.AI

Drill Two Sum and other Adyen interview questions under real-loop conditions with instant feedback on your reasoning, complexity claims, and code.

Practice these live with InterviewChamp.AI →