요르딩딩

백준 : 2563 : 색종이 (구현) 본문

[코딩테스트]/문제풀이

백준 : 2563 : 색종이 (구현)

요르딩딩 2022. 4. 1. 15:26
728x90
반응형

이번문제는 예전에 못풀었던 문제라 다시 풀어보게되었다.

 

첫 시작할때 역시 규칙을 찾으려고 하였으나, 쉽지 않았다.

 

문득 든 생각이 모눈종이였다. 이차원배열에서 색종이가 놓이는 부분을 1로, 안놓이는 부분을 0으로 간주한다면,

 

겹치는 부분의 규칙을 생각할 필요없이 겹치면 그냥 1로 두면 되기 때문이다.

 

이 모눈종이의 힌트는 페이지 마지막에 초등부 문제라고 적혀있어서, 접근을 할 수 있었던거 같다.

 

난이도도 쉽고 초등부인데 왜 이렇게 어렵나 했다.

import java.util.*;

class Main {
	
	static int n, cnt = 0;
	static int[][] graph;

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);

		n = sc.nextInt();
		sc.nextLine(); // 버퍼
		
		graph = new int[1000][1000];

		// 입력
		for (int i = 0; i < n ; i++) {
			String st = sc.nextLine();
			String[] stArr = st.split(" ");

			int a = Integer.parseInt(stArr[0]);
			int b = Integer.parseInt(stArr[1]);
			
			for(int k =a; k < a+10; k ++) {
				for(int l =b; l < b+10; l ++) {
					graph[k][l] =1;
				}
			}
		}

		for (int i = 0; i < 1000 ; i++) {
			for (int j = 0; j < 1000 ; j++) {
				if(graph[i][j] == 1) {
					cnt ++;
				}
			}
		}	
		System.out.println(cnt);
			
	}
}
728x90
반응형
Comments