[프로그래머스] 파이썬 코딩테스트 연습 LV1(내적)

728x90

1. 내적


문제 설명

 

길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)

 

내 풀이

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

 

다른 사람 풀이

def solution(a, b):

    return sum([x*y for x, y in zip(a,b)])

zip 함수는 주어진 여러 개의 iterable(반복 가능한) 객체를 모아서 각 iterable에서 동일한 인덱스의 원소들을 튜플로 묶어주는 역할

ex)  zip([1, 2, 3], ['a', 'b', 'c'])(1, 'a'), (2, 'b'), (3, 'c')

 

 

728x90