[Programmers] 내적
문제
길이가 같은 두 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의 길이)
제한사항
- a, b의 길이는 1 이상 1,000 이하입니다.
- a, b의 모든 수는 -1,000 이상 1,000 이하입니다.
나의 풀이
def solution(a, b):
sum = 0
for i in range(len(a)):
sum += a[i] * b[i]
return sum
# test case
a = [1, 2, 3, 4]
b = [-3, -1, 0, 2]
print(solution(a, b))
# 3
다른 풀이
zip() 함수를 사용한 방법
def solution(a, b):
return sum([x * y for x, y in zip(a, b)])
총평
zip() 함수가 있다는 것을 기억하자!
Leave a comment