1. quiz

  • 문제 설명
    길이가 같은 두 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 이하입니다.

2. answer

def solution(a, b):
    l = []
    for i in range(len(a)):
        l.append(a[i]*b[i])
    return sum(l)

3. 다른 사람의 풀이

def solution(a, b):

    return sum([x*y for x, y in zip(a,b)])
solution = lambda x, y: sum(a*b for a, b in zip(x, y))

4. zip()

  • zip() : iterable 객체를 인자로 받고, 각 객체가 갖고 있는 원소를 튜플의 형태로 차례로 접근할 수 있는 iterable를 반환한다.
numbers = [1, 2, 3]
letters = ["A", "B", "C"]
for pair in zip(numbers, letters):
    print(pair)
numbers = [1, 2, 3]
letters = ["A", "B", "C"]
for i in range(3):
	pair = (numbers[i], letters[i])
	print(pair)
profile
To be a changer who can overturn world

0개의 댓글