Two Sum

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


Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].


This solution is in JavaScript. Our A.I. can create solutions in multiple languages.
by kayakane
// Solution:
// The optimal solution is to use a hash table to store the numbers in the array as keys and their indices as values.
// Then, we can iterate through the array and check if the target minus the current number is in the hash table.
// If it is, we return the indices of the current number and the target minus the current number.
// This solution is optimal because it has a time complexity of O(n) and a space complexity of O(n).

const twoSum = (nums, target) => {
  const hashTable = {};
  for (let i = 0; i < nums.length; i++) {
    if (hashTable[target - nums[i]] !== undefined) {
      return [hashTable[target - nums[i]], i];
    hashTable[nums[i]] = i;

console.log(twoSum([2, 7, 11, 15], 9)); // [0, 1]

A.I. Evaluation of the Solution

The candidate's solution is correct and demonstrates a level of completeness. The candidate has correctly identified the problem and has provided a solution that solves the problem. The candidate's approach is general and could be applied to similar problems.

Evaluated at: 2022-12-08 08:15:51