본문 바로가기
코딩테스트

내적

by 느림보어른 2021. 5. 25.

문제풀이

def solution(a, b):
    answer = 0
    for idx in range(len(a)):
        answer += a[idx] * b[idx]
    return answer

알고리즘

다른 사람 풀이 중 더 깔끔하게 푼 해결점이 있어서 여기에 사용된 zip()에 대해 알아본다.

zip()

zip() 메서드는 2개 이상의 시퀀스(문자열, 튜플, 리스트, 바이트 배열, 바이트 등)를 인수로 취하여, 짧은 길이의 시퀀스를 기준으로 각 항목이 순서대로 1:1 대응하는 새로운 튜플 시퀀스를 만든다.

 

파이썬 3부터는 zip() 등의 결과가 객체로 반화되므로 내용을 확인하려면 list로 형 변환을 해야한다.

 

예를 들어

>>> a =[1, 2, 3, 4, 5]
>>> b = ['a', 'b', 'c', 'd']
>>> zip(a,b)
<zip object at 0x00000294A6E42A40>
>>> list(zip(a,b))
[(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')]

출처

문제: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges

 

코딩테스트 연습

기초부터 차근차근, 직접 코드를 작성해 보세요.

programmers.co.kr

파이썬 자료구조와 알고리즘 - 미아 스타인 저/최길우 

'코딩테스트' 카테고리의 다른 글

삼각 달팽이  (0) 2021.05.26
문자열 압축  (0) 2021.05.26
짝지어 제거하기  (0) 2021.05.25
더 맵게  (0) 2021.05.24
가장 먼 노드  (0) 2021.05.23