코린이의 소소한 공부노트

[백준 온라인 저지] 2738. 행렬 덧셈 본문

코딩테스트 풀이/JAVA

[백준 온라인 저지] 2738. 행렬 덧셈

무지맘 2023. 3. 21. 13:55

- 입력: 첫째 줄에 행렬의 크기 N M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. NM100보다 작거나 같고, 행렬의 원소는 절댓값이 100보다 작거나 같은 정수이다.

- 출력: 첫째 줄부터 N개의 줄에 행렬 AB를 더한 행렬을 출력한다. 행렬의 각 원소는 공백으로 구분한다.

import java.io.*;
class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        String[] size = br.readLine().split(" ");
        int n = Integer.valueOf(size[0]), m = Integer.valueOf(size[1]);
        int[] matrix = new int[n*m];
        int num = n, i = 0;
        while(num>0){
            String[] input = br.readLine().split(" ");
            for(String s : input)
                matrix[i++] = Integer.valueOf(s);
            num--;
        }
        i = 0;
        while(num<n){
            String[] input = br.readLine().split(" ");
            for(String s : input)
                matrix[i++] += Integer.valueOf(s);
            num++;
        }
        i = 0;
        for(int j=0 ; j<n ; j++){
            for(int k=0 ; k<m ; k++)
                bw.write(matrix[i++] + " ");
            bw.write("\n");
        }
        bw.flush();
        bw.close();
    }
}