본문 바로가기

Programmers/Go

[Programmers/Go] 내적

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의 길이)

2. 풀이

// 내적
package product

func Solution(a []int, b []int) int {
	answer := 0

	for i, value := range a {
		answer += value * b[i]
	}

	return answer
}

3. 테스트

package product

import "testing"

func TestProduct(t *testing.T) {
	input1 := [][]int{{1, 2, 3, 4}, {-1, 0, 1}}
	input2 := [][]int{{-3, -1, 0, 2}, {1, 0, -1}}
	expect := []int{3, -2}

	for i := range input1 {
		result := Solution(input1[i], input2[i])
		if result != expect[i] {
			t.Errorf("Test%d: Wrong result", i+1)
			t.Error("expect:", expect[i])
			t.Error("result:", result)
		}
	}
}

programmers.co.kr/learn/courses/30/lessons/70128

 

코딩테스트 연습 - 내적

길이가 같은 두 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의

programmers.co.kr