1. Two Sum
easyAsked at RevolutFind two indices whose values sum to a target, a Revolut warm-up that mirrors pairing two transaction legs to net a customer balance to zero.
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 add up to target. You may assume exactly one solution exists and you may not use the same element twice.
Constraints
2 <= nums.length <= 10^4-10^9 <= nums[i] <= 10^9Only one valid answer exists
Examples
Example 1
nums=[2,7,11,15], target=9[0,1]Example 2
nums=[3,2,4], target=6[1,2]Approaches
1. Brute force
Check every pair.
- Time
- O(n^2)
- Space
- O(1)
for (let i=0;i<n;i++) for (let j=i+1;j<n;j++) if (nums[i]+nums[j]===target) return [i,j];Tradeoff:
2. Hash map
Store complement of each value as we scan. One pass, O(n).
- Time
- O(n)
- Space
- O(n)
function twoSum(nums, target){
const seen = new Map();
for (let i=0;i<nums.length;i++){
const need = target - nums[i];
if (seen.has(need)) return [seen.get(need), i];
seen.set(nums[i], i);
}
}Tradeoff:
Revolut-specific tips
Revolut frames this as a debit/credit pairing exercise — explicitly call out that minor units (pence/cents) must be integers, not floats, before you write the hash map.
Solve it now
Free. No sign-up. Python and JavaScript run instantly in your browser.
Practice these live with InterviewChamp.AI
Drill Two Sum and other Revolut interview questions under real-loop conditions with instant feedback on your reasoning, complexity claims, and code.
Practice these live with InterviewChamp.AI →