[백준] 2563번 색종이 Java 문제 풀이
2023. 1. 30. 18:44ㆍ알고리즘/백준
728x90
반응형
문제풀이
import java.util.Scanner;
interface Main {
public static void main (String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt(), xst_point, yst_point, area = 0;
boolean[][] arr = new boolean[100][100];
for(int i=0; i<N; i++) {
xst_point = sc.nextInt();
yst_point = sc.nextInt();
for(int x=xst_point; x<xst_point+10; x++) {
for(int y=yst_point; y<yst_point+10; y++) {
if(!arr[y][x]) {
area++;
arr[y][x] = true;
}
}
}
}
System.out.println(area);
}
}
크기가 100 X 100으로 고정입니다.
색종이가 덮인 면적을 계산하는 문제입니다.
색종이가 몇 겹을 겹치건 1번 이상 덮이기만 하면 됩니다.
입력받은 값 부터 +10까지를 변으로 하는 정사각형이 만들어지므로 이중 for 문을 사용하여
입력받은 지점의 배열 값이 false일 경우 true로 바꿔주고 area 값을 1씩 증가시킵니다.
같은 지점이 나오더라도 이미 true이기 때문에 값은 증가되지 않습니다.
최종적으로 area 값을 출력해 주면 정답입니다.
출처 : https://www.acmicpc.net/problem/2563
728x90
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 18870번 좌표 압축 Java 문제 풀이 (0) | 2023.02.17 |
---|---|
[백준] 2108번 통계학 Java 문제 풀이 (0) | 2023.02.17 |
[백준] 2566번 최댓값 Java 문제 풀이 (0) | 2023.01.30 |
[백준] 2738번 행렬 덧셈 Java 문제 풀이 (0) | 2023.01.30 |
[백준] 5597번 과제 안 내신 분..? Java 문제 풀이 (2) | 2023.01.27 |