
문제 설명
길이가 같은 두 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 이하입니다.
입출력 예
a b result
[1,2,3,4] [-3,-1,0,2] 3
[-1,0,1] [1,0,-1] -2
입출력 예 설명
입출력 예 #1
a와 b의 내적은 1*(-3) + 2*(-1) + 3*0 + 4*2 = 3 입니다.
입출력 예 #2
a와 b의 내적은 (-1)*1 + 0*0 + 1\*(-1) = -2 입니다.
function solution(a, b) {
// 반복문을 돌려서 a의 i번쨰 요소와 b의 i번째 요소를 곱해서 answer에 더한다
let answer = 0;
for (let i = 0; i < a.length; i++) {
answer = answer + a[i] * b[i];
}
return answer;
}
✅ 두 배열에서 같은 인덱스에 속하는 요소끼리 곱하는 문제로 반복문을 통해 간단하게 해결했다.
문제 설명
두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.
제한 조건
a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.
a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.
a와 b의 대소관계는 정해져있지 않습니다.
입출력 예
a b return
3 5 12
3 3 3
5 3 12
function solution(a, b) {
// a와 b가 같을 경우 a를 리턴한다
// a가 b보다 클 경우 b부터 1씩 더하면서 i를 더해준다
// b가 a보다 클 경우 a부터 1씩 더하면서 i를 더해준다
// 반복문을 다 돌면 합을 리턴한다
var answer = 0;
if (a === b) {
return a;
} else if (a > b) {
for (let i = b; i <= a; i++) {
answer = answer + i;
}
} else {
for (let i = a; i <= b; i++) {
answer = answer + i;
}
}
return answer;
}
✅ 두 수 사이에 있는 수의 합을 구하는 문제로 a가 b보다 클 경우, b가 a보다 클 경우 이 두가지 경우를 구분해 반복문을 돌려서 간단하게 풀었다.