문제 출처 : https://www.acmicpc.net/problem/2563
문제
설명
넓이를 일일히 구하는 것이 아니라, 심플하게 1X1 짜리 검정 도화지가 100X100 흰색 도화지 위에 몇 개 있는지만을 셌습니다.
white[100][100]의 모든 요소의 값은 0으로 채워져 있다가, 입력값에 따라 검정 도화지로 덮여지는 부분들을 1로 바꾼 후 마지막에 1의 값이 들어 있는 요소의 갯수를 세는 방식으로 풀었습니다.
코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class BOJ2563_Paper {
public static void main(String[] args) throws Exception {
int[][] white = new int[100][100];
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
StringTokenizer st;
for(int i=0; i<num; i++) {
st=new StringTokenizer(br.readLine());
int x = Integer.parseInt(st.nextToken())-1; //인덱스는 0부터 시작하므로
int y = Integer.parseInt(st.nextToken())-1;
for(int j=x; j<x+10; j++) {
for(int k=y; k<y+10; k++) {
white[j][k]=1;
}
}
}
int cnt=0;
for(int i=0; i<100; i++) {
for(int j=0; j<100; j++) {
if(white[i][j]==1)
cnt++;
}
}
System.out.println(cnt);
}
}
'알고리즘 문제풀이 > 백준' 카테고리의 다른 글
[BOJ][JAVA]2493 - 탑 (0) | 2021.08.20 |
---|---|
[BOJ][JAVA]17478번 - 재귀함수가 뭔가요? (0) | 2021.08.16 |
[BOJ][JAVA]1244 - 스위치 켜고 끄기 (0) | 2021.08.15 |
[BOJ][JAVA]2961 - 도영이가 만든 맛있는 음식 (0) | 2021.08.12 |
[BOJ][JAVA]11866 - 요세푸스 문제 0 (0) | 2021.08.10 |