anott
기록
anott
  • 분류 전체보기
    • 오라클
    • SQL
    • 알고리즘
      • 백준저지
      • 프로그래머스
      • SWEA
    • 개발 관련
    • 프론트엔드
      • TypeScript, Next.js
      • React 공식문서 읽기
hELLO · Designed By 정상우.
anott
알고리즘/백준저지

백준저지 10163번 색종이

백준저지 10163번 색종이
알고리즘/백준저지

백준저지 10163번 색종이

2021. 8. 29. 22:56

출처: https://www.acmicpc.net/problem/10163

 

10163번: 색종이

평면에 색깔이 서로 다른 직사각형 모양의 색종이 N장이 하나씩 차례로 놓여진다. 이때 색종이가 비스듬하게 놓이는 경우는 없다. 즉, 모든 색종이의 변은 서로 평행하거나, 서로 수직이거나 둘

www.acmicpc.net

 

제출 날짜: 2021년 8월 28일 토요일

 

 

 

생각

백준저지 2563번 색종이 문제(https://www.acmicpc.net/problem/2563)와 거의 동일하게 풀었다.

 

 

 

코드

// 출처: 백준저지 10163번 색종이 https://www.acmicpc.net/problem/10163

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {
    static int[][] map = new int[1002][1002];
    static int N;

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        N = Integer.parseInt(st.nextToken());
        for (int i = 0; i < N; i++) {
            st = new StringTokenizer(br.readLine());
            int x1 = Integer.parseInt(st.nextToken());
            int y1 = Integer.parseInt(st.nextToken());
            int w = Integer.parseInt(st.nextToken());
            int h = Integer.parseInt(st.nextToken());
            colorMap(i + 1, x1, y1, (x1 + w - 1), (y1 + h - 1));
        }

        for (int i = 0; i < N; i++) {
            countMap(i + 1);
        }
    }

    private static void colorMap(int n, int x1, int y1, int x2, int y2) {
        for (int i = x1; i <= x2; i++) {
            for (int j = y1; j <= y2; j++) {
                map[i][j] = n;
            }
        }
    }

    private static void countMap(int n) {
        int cnt = 0;
        for (int i = 0; i < 1002; i++) {
            for (int j = 0; j < 1002; j++) {
                if (map[i][j] == n) {
                    cnt++;
                }
            }
        }
        System.out.println(cnt);
    }
}

 

저작자표시 비영리 (새창열림)

'알고리즘 > 백준저지' 카테고리의 다른 글

백준저지 10989번 수 정렬하기 3  (0) 2021.09.01
백준저지 2669번 직사각형 네개의 합집합의 면적 구하기  (0) 2021.08.30
백준저지 15656번 N과 M (7)  (0) 2021.08.28
백준저지 2309번 일곱 난쟁이  (0) 2021.08.27
백준저지 2116번 주사위 쌓기  (0) 2021.08.26
    '알고리즘/백준저지' 카테고리의 다른 글
    • 백준저지 10989번 수 정렬하기 3
    • 백준저지 2669번 직사각형 네개의 합집합의 면적 구하기
    • 백준저지 15656번 N과 M (7)
    • 백준저지 2309번 일곱 난쟁이
    anott
    anott

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.