✏️ 문제풀이/백준
[백준/Java] 2738번 :: 행렬 덧셈
bono-hye
2024. 4. 21. 21:54

🌱 BufferedReader 사용
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main
{
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
int[][] arr1 = new int[n][m]; // 첫번째 행렬
int[][] arr2 = new int[n][m]; // 두번째 행렬
int[][] result = new int[n][m]; // 첫번째 행렬과 두번째 행렬의 각 원소를 더한 행렬
for(int i=0; i<n; i++)
{
st = new StringTokenizer(br.readLine());
for(int j=0; j<m; j++)
arr1[i][j] = Integer.parseInt(st.nextToken());
}
for(int i=0; i<n; i++)
{
st = new StringTokenizer(br.readLine());
for(int j=0; j<m; j++)
arr2[i][j] = Integer.parseInt(st.nextToken());
}
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
result[i][j] = arr1[i][j] + arr2[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();
}
}
}

🌱 Scanner 사용
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int[][] arr1 = new int[n][m];
int[][] arr2 = new int[n][m];
int[][] result = new int[n][m];
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
arr1[i][j] = sc.nextInt();
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
arr2[i][j] = sc.nextInt();
for(int i=0; i<n; i++)
for(int j=0; j<m; j++)
result[i][j] = arr1[i][j] + arr2[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();
}
sc.close();
}
}

💡 정리
크게 어렵지 않은 문제였다!