import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
// 행렬의 크기 N,M 입력 받기
int N = sc.nextInt();
int M = sc.nextInt();
// 행렬 A와 B 선언 및 입력 받기
int[][] A = new int[N][M];
int[][] B = new int[N][M];
for(int i = 0; i < N; i++){
for(int j = 0; j < M; j++){
A[i][j] = sc.nextInt();
}
}
for(int i = 0; i < N; i++){
for(int j = 0; j < M; j++){
B[i][j] = sc.nextInt();
}
}
// 두 행렬을 더한 결과 계산 및 출력
int[][] result = new int[N][M];
for(int i = 0; i < N; i++){
for(int j = 0; j < M; j++){
result[i][j] = A[i][j] + B[i][j];
}
}
for(int i = 0; i < N; i++){
for(int j = 0; j < M; j++){
System.out.print(result[i][j] + " ");
}
System.out.println();
}
}
}
✔️ 2차원 배열이란?
행과 열로 구성된 2차원 구조의 배열을 말한다.
일반적으로 행렬(Matrix)이라고 불리며, 2차원 배열은 행과 열의 인덱스를 사용하여 각 요소에 접근할 수 있다.
2차원 배열은 다음과 같이 행과 열의 크기로 구성된다.
int[][] arr = new int[행의 크기][열의 크기];
예를 들어, 3 X 3 크기의 2차원 배열을 생성하려면 다음과 같다.
int[][] arr = new int[3][3];
이렇게 생성된 arr 은 3개의 행과 3개의 열로 구성된 2차원 배열이 된다.
각 요소에는 행과 열의 인덱스를 사용하여 접근할 수 있다.
2차원 배열은 이차원적인 데이터를 표현할 때 사용된다.
예를 들어, 행렬이나 이미지, 게임판 등은 2차원 배열로 표현할 수 있다.
2차원 배열은 이중 반복문을 사용하여 모든 요소를 순회하고 처리하는데에도 유용하게 사용된다.
아래 예시 코드는 3 X 4 크기의 2차원 배열을 생성하고 접근하는 방법이다.
public class ThreeByFourArray {
public static void main(String[] args) {
int[][] arr = new int[3][4];
// 배열 초기화
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
arr[i][j] = i * 4 + j;
}
}
// 배열 요소 출력
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
}
위 코드를 실행하면 다음과 같은 결과가 출력된다.
열
행 0 1 2 3
4 5 6 7
8 9 10 11
✔️ 일반적으로 행렬은 다음과 같이 나타낼 수 있다.
A = [ a11 a12 a13 ... a1n ]
[ a21 a22 a23 ... a2n ]
[ a31 a32 a33 ... a3n ]
[ ... ... ... ... ... ]
[ am1 am2 am3 ... amn ]
여기서 aij 는 행렬 A의 i번째 행과 j번째 열의 원소를 나타낸다.
예를 들어, a12는 A의 1번째 행과 2번째 열의 원소를 의미한다.
'문제' 카테고리의 다른 글
(백준) 2566번 '최댓값' (0) | 2023.08.08 |
---|---|
(백준) 2908번 '상수' (0) | 2023.08.06 |
(백준) 11718번 '그대로 출력하기' (0) | 2023.08.05 |
(백준) 1152번 '단어의 개수' (0) | 2023.08.02 |