RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
KOI00085

화려한 정사각형

Diamond IV 다이아몬드 IV
난이도
5s
시간 제한
512MB
메모리 제한
1
맞았습니다!!
1
제출 수
100.0%
정답률
레이팅

의견: 0

설명

평면에 N개의 점 \(P\)\(1\)(\(x\)\(1\), \(y\)\(1\)), P\(2\)(\(x\)\(2\), \(y\)\(2\)), . . . , P\(N\)(\(x\)\(N\), \(y\)\(N\))이 주어지며, 각각의 점들은 총 \(K\)개의 색깔 중 하나를 가지고 있다. 각 점의 색깔은 {\(1\), \(2\), . . . , \(K\)} 중의 한 정수로 표현된다.

어떤 정사각형이 각 \(K\)개의 색깔에 대해 해당 색깔의 점을 하나 이상 포함하고 있다면, 이 정사각형을 화려한 정사각형이라고 부른다. 변의 길이를 최소로 하는 화려한 정사각형을 찾아서 그 변의 길이를 출력하는 프로그램을 작성하라.

단, 여기서 정사각형은 네 변이 모두 수평 혹은 수직인 것에 한정하며, 정사각형의 내부가 아닌 경계에 놓인 점들도 그 정사각형에 포함된다고 생각한다. 정사각형의 한 변의 길이가 \(0\)이 되어 점으로 나타나는 경우도 정사각형의 한 경우로 간주한다.

제약
  • \(2 ≤ N ≤ 100,000\)
  • \(2 ≤ K ≤ N\)
  • 모든 \(i\) (\(1 ≤ i ≤ N\))에 대해, \(x_i\)\(y_i\)\(1\) 이상 \(250,000\) 이하의 정수이다.
  • 모든 색 \(k\) (\(1 ≤ k ≤ K\))에 대해, \(N\)개의 점들 중 색깔이 \(k\)인 점이 최소 하나 존재한다.
입력 형식

첫 번째 줄에 두 정수 \(N\)\(K\)가 공백 하나를 사이로 두고 주어진다.

이후 \(N\) 개의 줄이 주어진다. 이 중 \(i\) 번째 줄에는 세 개의 정수 \(x\)\(i\), \(y\)\(i\), \(k\)\(i\)가 공백 하나 씩을 사이에 두고 주어지며, 입력으로 주어지는 각 점의 좌표 (\(x\)\(i\), \(y\)\(i\))와 그 점의 색깔 \(k\)\(i\)을 의미한다.

출력 형식

첫 번째 줄에 문제의 정답을 출력한다.

서브태스크
서브태스크점수설명

1

3점

\(N ≤ 50\), 모든 \(i\) (\(1 \le i \le N)에 대해 \)x_i, y_i \le 50$commit

2

10점

\(K \le 50\), 모든 \(i\) (\(1 \le i \le N\))에 대해 \(x_i, y_i \le 2,500\)

3

12점

\(k = 2\)

4

5점

\(N \le 50\)

5

8점

\(N \le 150\)

6

9점

\(N \le 600\)

7

13점

\(N \le 2,500\)

8

40점

추가 제약 조건 없음.

예제 1
입력
5 2
4 2 1
5 3 1
5 4 2
4 5 2
3 8 2
출력
1
예제 2
입력
5 3
4 2 1
5 3 1
5 4 2
4 5 2
3 8 3
출력
5
예제 3
입력
4 2
1 1 1
1 1 1
1 1 2
1 1 2
출력
0
문제 정보

riseoj 작성

출처 올림피아드 > 한국정보올림피아드 > KOI 2020 > 2차 대회 > 중등부 4번 / 고등부 3번

평가 및 의견

화려한 정사각형

개요
출제자 난이도 Diamond IV 다이아몬드 IV 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

화려한 정사각형

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8