알고리즘

백준 #2738 java 2023.01.22

chaewonni 2023. 1. 22. 02:30

행렬 덧셈 문제. 행렬하자마자 아, 이차원배열이구나! 하는 생각이 들었다.

처음 배열을 접했을 때 이차원 배열 같은 다차원 배열이 정말 어려웠었는데 지금 이차원 배열 문제를 풀 수 있는 거 보면(물론 이 문제는 완전 기본 문제지만) 정말 코딩은 반복도 중요한 것 같다.  

import java.util.Scanner;

public class Q2738 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int N = sc.nextInt();
		int M = sc.nextInt();
		
		int[][] arr = new int[N][M];
		
		for(int i = 0; i<N; i++) {
			for(int j = 0; j<M; j++) {
				arr[i][j] = 0;
			}
		}
		
		for(int n = 0; n<2; n++) {
			for(int i = 0; i<N; i++) {
				for(int j = 0; j<M; j++) {
					arr[i][j] += sc.nextInt();
				}
			}
		}
		
		for(int i = 0; i<N; i++) {
			for(int j = 0; j<M; j++) {
				System.out.print(arr[i][j] + " ");
			}
			System.out.println();
		}

	}

}

처음 반복문에서 행렬을 0으로 초기화해주고 (이 부분은 없어도 상관 없는 것 같다.) 두번째 반복문에서 각각의 행렬 칸에 입력한 값들을 더해주고, 세번째 반복문에서 행렬에 있는 값들을 다 출력해주면 끝!