https://school.programmers.co.kr/learn/courses/30/lessons/12950
1.
class Solution {
public int[][] solution(int[][] arr1, int[][] arr2) {
int rows = arr1.length;
int cols = arr1[0].length;
int[][] answer = new int[rows][cols];
for (int i = 0; i < rows; i++) {
for (int j = 0; j<cols; j++ ) {
answer[i][j] = arr1[i][j] + arr2[i][j];
}
}
return answer;
}
}
2.
import java.util.stream.IntStream;
class Solution {
public int[][] solution(int[][] arr1, int[][] arr2) {
int rows = arr1.length;
int cols = arr1[0].length;
// 각 행에 대해 처리
return IntStream.range(0, rows)
.mapToObj(i ->
// 각 열에 대해 처리하여 두 행렬의 값을 더함
IntStream.range(0, cols)
.map(j -> arr1[i][j] + arr2[i][j])
.toArray() // 한 행의 결과를 배열로 변환
)
.toArray(int[][]::new); // 모든 행을 2차원 배열로 변환
}
}
'문제 풀이 > 프로그래머스 알고리즘' 카테고리의 다른 글
이상한 문자 만들기 // String.split(), Character.toUpperCase() (1) | 2024.10.10 |
---|---|
최대공약수와 최소공배수 // 스트림 연습 (0) | 2024.10.08 |
문자열 다루기 기본 // Character.isDigit() (0) | 2024.10.06 |
약수의 개수와 덧셈 // for문 , if문 사용 + stream 사용 (0) | 2024.10.05 |
제일 작은 수 제거하기 // ArrayList.remove() 메서드 + 기본 타입 , 래퍼 클래스 (2) | 2024.10.01 |