two-sum

박정현·2022년 2월 19일
0

LeetCode

목록 보기
1/18
post-thumbnail

문제

Share
Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

You can return the answer in any order.

Example 1:

Input: nums = [2,7,11,15], target = 9
Output: [0,1]
Explanation: Because nums[0] + nums[1] == 9, we return [0, 1].
Example 2:

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

Input: nums = [3,3], target = 6
Output: [0,1]

Constraints:

2 <= nums.length <= 104
-109 <= nums[i] <= 109
-109 <= target <= 109
Only one valid answer exists.

Follow-up: Can you come up with an algorithm that is less than O(n2) time complexity?

풀이

var twoSum = function (nums, target) {
    const output = [];
    for (let i = 0; i < nums.length; i++) {
        for (let m = i + 1; m < nums.length; m++) {
            if (nums[i] + nums[m] === target) {
                output.push(i, m);
            }
        }
    }
    return output;
};

✏️ 중복되지 않는 조합으로 출력해야 됐기 때문에 이중반복문을 쓰되 두번째 반복문에서는 인덱스가 0부터가 아니라 1부터 하게 했다.

profile
공부하고 비행하다 개발하며 여행하는 frontend engineer

0개의 댓글