📘문제 설명
길이가 같은 두 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의 길이)
https://school.programmers.co.kr/learn/courses/30/lessons/70128
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
📌 제한조건
- a, b의 길이는 1 이상 1,000 이하입니다.
- a, b의 모든 수는 -1,000 이상 1,000 이하입니다.
💡 개념 설명
- 변수 초기화: 내적 값을 저장할 정수형 변수를 0으로 초기화합니다.
- 반복문: 두 배열 a와 b의 길이가 같으므로, 그 길이만큼 반복하는 반복문을 실행합니다.
- 내적 계산: 반복문 안에서 각 인덱스(i)에 대해 a[i]와 b[i]를 곱한 값을 초기화한 변수에 계속 더해 나갑니다.
- 값 반환: 반복문이 끝나면 최종적으로 계산된 합을 반환합니다.
📎 입출력 예시

📎 코드
public class Solution {
public int solution(int[] a, int[] b) {
int answer = 0;
for (int i = 0; i < a.length; i++) {
answer += a[i] * b[i];
}
return answer;
}
public static void main(String[] args) {
Solution sol = new Solution();
// 테스트 케이스
int[] a1 = {1, 2, 3, 4};
int[] b1 = {-3, -1, 0, 2};
int[] a2 = {-1, 0, 1};
int[] b2 = {1, 0, -1};
System.out.println("결과 1: " + sol.solution(a1, b1)); // 예상 출력: 3
System.out.println("결과 2: " + sol.solution(a2, b2)); // 예상 출력: -2
}
}
📎 결과

'Java' 카테고리의 다른 글
| [Java] 코딩 24 - 프로그래머스 기출 문제(JAVA) / 문자열 내림차순으로 배치하기 / Day 21 (0) | 2025.09.26 |
|---|---|
| [Java] 코딩 23 - 프로그래머스 기출 문제(JAVA) / 약수의 개수와 덧셈 / Day 21 (0) | 2025.09.26 |
| [Java] 코딩 21 - 프로그래머스 기출 문제(JAVA) / 수박수박수박수박수박수? / Day 20 (0) | 2025.09.23 |
| [Java] 코딩 20 - 프로그래머스 기출 문제(JAVA) / 가운데 글자 가져오기 / Day 19 (0) | 2025.08.20 |
| [Java] 코딩 19 - 프로그래머스 기출 문제(JAVA) / 제일 작은 수 제거하기 / Day 18 (4) | 2025.07.29 |