// your code goes here
function twoSum(nums, target) {
let hashTable = {};
for (let i = 0; i < nums.length; i++) {
let num = nums[i];
let complement = target - num;
if (hashTable[complement] !== undefined) {
return [hashTable[complement], i];
}
hashTable[num] = i;
}
return [];
}
// Example usage
const nums = [2, 7, 11, 15];
const target = 9;
console.log(twoSum(nums, target)); // Output: [0, 1]
Ci8vIHlvdXIgY29kZSBnb2VzIGhlcmUKZnVuY3Rpb24gdHdvU3VtKG51bXMsIHRhcmdldCkgewogICAgbGV0IGhhc2hUYWJsZSA9IHt9OwogICAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1zLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgbGV0IG51bSA9IG51bXNbaV07CiAgICAgICAgbGV0IGNvbXBsZW1lbnQgPSB0YXJnZXQgLSBudW07CiAgICAgICAgaWYgKGhhc2hUYWJsZVtjb21wbGVtZW50XSAhPT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgIHJldHVybiBbaGFzaFRhYmxlW2NvbXBsZW1lbnRdLCBpXTsKICAgICAgICB9CiAgICAgICAgaGFzaFRhYmxlW251bV0gPSBpOwogICAgfQogICAgcmV0dXJuIFtdOwp9CgovLyBFeGFtcGxlIHVzYWdlCmNvbnN0IG51bXMgPSBbMiwgNywgMTEsIDE1XTsKY29uc3QgdGFyZ2V0ID0gOTsKY29uc29sZS5sb2codHdvU3VtKG51bXMsIHRhcmdldCkpOyAvLyBPdXRwdXQ6IFswLCAxXQo=