[파이썬 알고리즘 인터뷰] 배열 - 두 수의 합

2023. 1. 15. 18:45·알고리즘/프로그래머스
728x90

문제 설명

- 덧셈하여 타겟을 만들 수 있는 배열의 두 숫자 인덱스를 리턴하라.


예시

#입력

nums = (2, 7, 11, 15], target = 9

#출력
[0, 1]


#설명
nums[0] + nums[1]= 2 + 7 = 9

풀이

enumerate를 사용하여 리스트 원에 순서값을 부여해준다.
예시로 ( 0 , '2' ) 튜플형태로 담겨 있다.

complement가 7이 되면 nums 배열안에 같은 값을 찾아보고 맞으면 리스트 형태로 반환한다.

 

nums = [2, 7, 11, 15]
# enumerate를 사용하여 리스트 원에 순서값을 부여해준다.
# 예로 ( 0 , '2') 튜플형태로 담겨 있다.
target = 9

def twoSum(nums: list, target: int) -> list:
    for i, n in enumerate(nums):

        complement = target - n
        print('complement : ' , complement)
        print('i : ', i)
        print('n : ' , n)
        if complement in nums[i + 1:]:
            print('complement : ' , complement)
            return [nums.index(n), nums[i + 1:].index(complement) + (i + 1)]

print(twoSum(nums, target))

출력

complement :  7
i :  0
n :  2
complement :  7
[0, 1]
728x90

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] 최빈값 구하기  (0) 2023.03.08
[프로그래머스] 배열 중앙값 구하기  (0) 2023.03.06
[프로그래머스] 분수의 덧셈 구하기  (1) 2023.03.05
[파이썬 알고리즘 인터뷰] 배열 - 세수의 합  (0) 2023.01.15
[파이썬 알고리즘 인터뷰] 배열 - 빗물 트래핑  (0) 2023.01.15
'알고리즘/프로그래머스' 카테고리의 다른 글
  • [프로그래머스] 배열 중앙값 구하기
  • [프로그래머스] 분수의 덧셈 구하기
  • [파이썬 알고리즘 인터뷰] 배열 - 세수의 합
  • [파이썬 알고리즘 인터뷰] 배열 - 빗물 트래핑
bulmang
bulmang
모바일 개발자 도전
  • bulmang
    bulmang
    bulmang
  • 전체
    오늘
    어제
    • 분류 전체보기 (208)
      • 알고리즘 (68)
        • List (3)
        • Two Pointer (6)
        • Binary Search (4)
        • Prefix Sum (3)
        • Sort (4)
        • Brute Force (5)
        • Array (2)
        • String (4)
        • 프로그래머스 (12)
        • 백준 (9)
        • Queue (2)
        • Stack (2)
        • Recursion (12)
      • Computer Science (16)
        • Computer Architecture (6)
        • Operating System (5)
        • Network (2)
        • 기타 (2)
        • System Programming (1)
      • Swift (70)
        • 개발 (24)
        • 정리 (25)
        • 문법 (20)
      • Flutter (24)
      • 기타 (12)
        • 후기 (12)
      • Git (6)
      • Ios 오픈소스 (5)
      • UI 디자인 (5)
      • AppleScript (2)
  • 링크

    • Notion
    • Github
  • 태그

    개발
    Java
    riverpod
    Apple Developer Academy
    피플
    FLUTTER
    Swift
    IOS
    협업
    백준
    컴퓨터구조
    문법
    SwiftUI
    자료구조
    today i learned
    Xcode
    재귀
    알고리즘
    코딩테스트
    til
  • 최근 댓글

  • 최근 글

  • 인기 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.2
bulmang
[파이썬 알고리즘 인터뷰] 배열 - 두 수의 합
상단으로

티스토리툴바