[백준] 2563: 색종이 - JAVA[자바]

다인·2024년 7월 11일

백준

목록 보기
9/112
post-thumbnail

겹치는 부분을 어떻게 할까,,하다가 boolean타입의 2차원 배열을 만들어서 겹치는 부분을 100*n에서 빼려고 했는데 넘 이상한 것 같아서... 결국 구글링을 했다.
너무나도 간단하게 겹치지 않으면 count++를 하면 된다니...!! 왜 그걸 못 떠올렸을까

코드

import java.io.*;
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        boolean[][] arr = new boolean[100][100];
        int n = Integer.parseInt(br.readLine());
        int area = 0;

        for(int k=0; k<n; k++){
            StringTokenizer st = new StringTokenizer(br.readLine(), " ");
            int width = Integer.parseInt(st.nextToken());
            int height = Integer.parseInt(st.nextToken());
            for(int i=width-1; i<width+9; i++){
                for(int j=height-1; j<height+9; j++){
                    if(!arr[i][j]){
                        arr[i][j] = true;
                        area++;
                    }
                }
            }
        }
        System.out.println(area);
    }
}

0개의 댓글