728x90
반응형
문제 요악
- 알고리즘 분류: 수학, 구현
- 난이도: Bronze5
- 사이트 주소: https://www.acmicpc.net/problem/2738
2738번: 행렬 덧셈
첫째 줄에 행렬의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같
www.acmicpc.net
문제 풀이
- A, B 리스트 또는 2차원 배열을 선언해서 값을 넣는다.
- 이중 for문으로 같은 인덱스 위치를 더한다.
JAVA
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[][] A = new int[N][M];
int[][] B = new int[N][M];
for(int i =0 ; i < N; i++) {
st = new StringTokenizer(br.readLine());
for(int j = 0; j < M; j++) {
A[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++) {
B[i][j] = Integer.parseInt(st.nextToken());
}
}
StringBuilder sb = new StringBuilder();
for(int i =0 ; i < N; i++) {
for(int j = 0; j < M; j++) {
sb.append((A[i][j] + B[i][j]) + " ");
}
sb.append("\n");
}
System.out.println(sb.toString());
}
}
Python
N, M = map(int, input().split())
A = [list(map(int, input().split())) for _ in range(N)]
B = [list(map(int, input().split())) for _ in range(N)]
C = [[0] * M for _ in range(N)]
for i in range(N):
for j in range(M):
C[i][j] = A[i][j] + B[i][j]
for item in C:
print(' '.join(map(str, item)))
728x90
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[BAEJOON] 5058 배수와 약수 (0) | 2022.09.06 |
---|---|
[BAEJOON] 1358 하키 (0) | 2022.08.26 |
[BAEJOON] 1004 어린 왕자 (0) | 2022.08.23 |
[BAEJOON] 2477 참외밭 (0) | 2022.08.18 |
[BAEKJOON] 11478 서로 다른 부분 문자열의 개수 (0) | 2022.08.16 |