자료구조 & 알고리즘 & cs/CodingTest
프로그래머스 LEVEL1 - 내적
뽀또롱
2022. 6. 8. 18:11
▶ 문제 설명
길이가 같은 두 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 이하입니다.
▶ 입출력 예
[1,2,3,4] | [-3,-1,0,2] | 3 |
[-1,0,1] | [1,0,-1] | -2 |
▶ 내가 짠 코드
def solution(a, b):
answer = 0
length = len(a)
for i in range(length):
answer += a[i]*b[i]
return answer
▶ 참고사항
다른사람의 풀이를 참고해보니
def solution(a, b):
return sum([x*y for x, y in zip(a,b)])
zip() 함수를 사용하여 간단하게 끝냈다.
zip은 순회가능한 객체를 인자로 받아 각 원소를 튜플 형태로 접근할 수 있는 반복자를 반환한다.
유용하게 쓰일 것 같으니 참고해두자.
728x90