반응형
📖 문제
https://www.acmicpc.net/problem/16967
💡 풀이 방식
• 구현
배열을 그려봤을 때 겹치는 부분과 안 겹치는 곳의 패턴을 파악하는 것이 핵심이다.
🔺 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
import java.util.*;
import java.io.*;
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 H = Integer.parseInt(st.nextToken());
int W = Integer.parseInt(st.nextToken());
int X = Integer.parseInt(st.nextToken());
int Y = Integer.parseInt(st.nextToken());
int[][] B = new int[H+X][W+Y];
for(int i = 0 ; i < H+X ; i++) {
st = new StringTokenizer(br.readLine(), " ");
for(int j = 0 ; j < W+Y ; j++) {
B[i][j] = Integer.parseInt(st.nextToken());
}
}
int[][] A = new int[H][W];
for(int i = 0 ; i < H ; i++) {
for(int j = 0 ; j < W ; j++)
A[i][j] = B[i][j];
}
for(int i = X ; i < H ; i++) {
for(int j = 0 ; j < Y ; j++)
A[i][j] = B[i][j];
}
// 겹치는 부분
for(int i = X ; i < H ; i++) {
for(int j = Y ; j < W ; j++)
A[i][j] = B[i][j] - A[i-X][j-Y];
}
// 출력하기
StringBuilder sb = new StringBuilder();
for(int[] i : A) {
for(int j : i) {
sb.append(j + " ");
}
sb.append("\n");
}
System.out.println(sb.toString());
}
}
|
cs |
➕ 다른 풀이 방식
- A 배열 채울 때 2중 for문 한 번만 돌려서 조건문으로 처리하면서 채운 풀이
[ 백준 / 16967번 ] Silver III 배열 복원하기 - SOLVED BY JAVA
www.acmicpc.net/problem/16967 16967번: 배열 복원하기 크기가 H × W인 배열 A와 두 정수 X와 Y가 있을 때, 크기가 (H + X) × (W + Y)인 배열 B는 배열 A와 배열 A를 아래로 X칸, 오른쪽으로 Y칸 이동시킨 배열을 겹
train-validation-test.tistory.com
💦 어려웠던 점
- 패턴을 파악하는 것을 하지 못 했다.
🧐 새로 알게 된 내용
- 문제 해결 아이디어,,, 뇌를 쓰자,,
1회독 | 2회독 | 3회독 | 4회독 | 5회독 |
V |
(참고)
✔ 패턴 파악용 그림 참고
[백준 16967 - Java] 배열 복원하기
https://www.acmicpc.net/problem/16967 16967번: 배열 복원하기 크기가 H × W인 배열 A와 두 정수 X와 Y가 있을 때, 크기가 (H + X) × (W + Y)인 배열 B는 배열 A와 배열 A를 아래로 X칸, 오른쪽으로 Y칸 이동시킨 배
excited-hyun.tistory.com
반응형
'코테 > 백준' 카테고리의 다른 글
[백준/JAVA] 1935번: 후위 표기식2 (1) | 2024.09.08 |
---|---|
[백준/JAVA] 1027번: 고층 건물 (0) | 2024.09.04 |
[백준/JAVA] 11501번: 주식 (0) | 2024.08.21 |
[백준/JAVA] 20310번: 타노스 (0) | 2024.08.16 |
[백준/JAVA] 22233번: 가희와 키워드 (0) | 2024.08.15 |