OneDev
[JAVA] 백준 2563- 색종이 본문
※ 풀이
(1) 가로, 세로의 길이가 100인 정사각형의 흰색 도화지를 100 x 100 행렬로 선언합니다.
초기화는 하지 않은 int 배열이므로 초기값은 0으로 저장됩니다.
(2) 구하고자 하는 값(=넓이) 를 저장할 변수 area 를 선언합니다
(3) 색종이의 개수를 입력받고
(4) 입력받은 개수만큼 반복문을 돌려 흰색도화지(0) 검은 색종이에 해당하는 부분만큼을(1)로 값을 바꿔줍니다
(5) 바꿔주는 과정마다(0 → 1) 넓이를 1 증가 시킵니다
(6) 모든 반복이 종료되었을 때 넓이를 출력합니다
※ 소스코드
package BOJ;
import java.util.Scanner;
public class B2563 {
public static void main(String[] args) {
int[][] arr = new int[100][100]; // 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지
int area = 0; // 넓이를 저장할 변수
Scanner scan = new Scanner(System.in);
int num = scan.nextInt(); // 색종이의 개수 입력받기
//색종이 개수만큼 반복문돌려 검은 색종이 붙이기(?)
for(int i=0; i<num; i++) {
int x = scan.nextInt();
int y = scan.nextInt();
for(int a=x; a<x+10; a++) {
for(int b=y; b<y+10;b++) {
if(arr[a][b] != 1) {
arr[a][b] = 1;
area++;
}
}
}
}
System.out.println(area);
}
}
'자료구조&알고리즘 > BOJ' 카테고리의 다른 글
[C] 백준 10988- 팰린드롬인지 확인하기 (0) | 2023.07.19 |
---|---|
[C] 백준 9086 - 문자열 (0) | 2023.07.18 |
[JAVA] 백준 25501번 : 재귀의 귀재 (0) | 2023.01.24 |
[JAVA] 백준 2557 번 : Hello World! (백준 Java public class) (0) | 2023.01.03 |
[C++] 백준(BOJ) 2738번 - 행렬 덧셈 (0) | 2022.12.01 |
Comments