[알고리즘] 백준 - 10163 ( 색종이 ) / 자바

배고픈메꾸리·2021년 2월 23일
0

알고리즘

목록 보기
49/128
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class 실험실 {
	public static void main(String[] args) throws Exception {
		StringBuilder sb = new StringBuilder("");
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;

		int N = Integer.parseInt(br.readLine());
		int[][] field = new int[101][101];
		int[] ans = new int[N + 1];
		for (int i = 0; i < N; i++) {
			st = new StringTokenizer(br.readLine());
			int startX = Integer.parseInt(st.nextToken());
			int startY = Integer.parseInt(st.nextToken());
			int width = Integer.parseInt(st.nextToken());
			int height = Integer.parseInt(st.nextToken());
			
            		//해당 index의 색종이를 칠하는 과정
			for (int x = startX; x < startX + width; x++) {
				for (int y = startY; y < startY + height; y++) {
					field[x][y] = i + 1;
				}
			}
		}
        
		// 색종이의 면적을 count
		for (int x = 0; x < 101; x++) {
			for (int y = 0; y < 101; y++) {
			//	if (field[x][y] != 0)  변경 후
					ans[field[x][y]]++;
			}
		}
		for(int i = 1 ; i <=N ; i++) {
			sb.append(ans[i]).append("\n");
		}
        
		System.out.print(sb);

	}
}

profile
FE 개발자가 되자

0개의 댓글