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

대피소

Silver IV 실버 IV
난이도
3s
시간 제한
1024MB
메모리 제한
6
맞았습니다!!
7
제출 수
85.7%
정답률
레이팅

의견: 0

설명

\(2\)차원 평면의 KOI 마을에 \(N\)개의 집이 있다. 각 \(i\)번째 집의 위치는 \((X_i , Y_i)\)이다.

\(i\)번째 집과 \(j\)번째 집 사이의 거리는 \(|X_i - X_j | + |Y_i - Y_j |\)이다. 즉, 두 집 사이의 거리는 \(X\)의 차이와 \(Y\)의 차이의 합이다. 예를 들어, \((1, 6)\)에 위치한 집과 \((2, 4)\)에 위치한 집은 \((2 - 1) + (6 - 4)\)\(3\)만큼 떨어져 있다.

KOI 마을은 재난 발생 시 주민들이 안전하게 대피할 수 있도록 \(K\)개의 집에 대피소를 설치할 계획이다. 모 든 주민의 안전을 고려하여, 집에서 가장 가까운 대피소로 이동할 때 가장 긴 거리가 최소가 되도록 대피소를 설치할 \(K\)개의 집을 선택하고, 그때 대피소와 가장 멀리 떨어진 집과의 거리를 구하려고 한다.

아래는 \(5\)개의 집이 각각 \((1, 5)\), \((3, 0)\), \((3, 3)\), \((6, 12)\), \((8, 9)\)에 위치한 마을의 예이다.

이 마을에 \(2\)개의 대피소를 설치하려고 한다. 만약 \((3, 0)\)\((1, 5)\)에 위치한 집에 대피소를 설치한다면 설치하지 않은 나머지 세 집에서 가까운 대피소까지의 거리가 각각 \(3\), \(11\), \(12\)이고, 이 중 가장 먼 거리는 \(12\)이다.

하지만 \((3, 3)\)\((6, 12)\)에 위치한 집에 대피소를 설치하면 가장 가까운 대피소와 가장 멀리 떨어져 있는 집은 \((8, 9)\)에 위치한 집으로, \((6, 12)\)\(5\)만큼 떨어져 있다. 대피소를 어떻게 설치해도 최대 거리가 \(5\)보다 작아지는 경우가 없으므로 \(5\)가 구하고자 하는 거리가 된다.

KOI 마을의 집들의 위치와 설치할 대피소의 개수가 주어질 때, 대피소를 설치하는 모든 방법 중 가장 가까운 대피소와 집 사이의 거리 중 가장 큰 값이 가장 작을 때의 거리를 구해라.

제약
  • 주어지는 모든 수는 정수이다.
  • \(1 \le K \le 3\)
  • \(K \le N \le 50\)
  • \(0 \le X_i \le 100\,000\)
  • \(0 \le Y_i \le 100\,000\)
  • 같은 위치에 집이 여럿 존재하지 않는다. 즉, \((X_1, Y_1), (X_2, Y_2), \cdots, (X_N, Y_N)\)는 서로 다르다.
입력 형식

첫 번째 줄에 \(N\)\(K\)가 공백을 사이에 두고 주어진다.

다음 \(N\)개의 줄에는 집의 위치가 주어지는데, 이 중 \(i\) (\(1 ≤ i ≤ N\))번째 줄에는 \(X_i\)\(Y_i\)가 공백을 사이에 두고 주어진다.

출력 형식

첫 번째 줄에 답을 출력한다.

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

1

5점

\(N = K + 1\).

2

7점

\(K = 1\), 모든 \(i\) (\(1 \le i \le N\))에 대해 \(X_i = i\)이고 \(Y_i = 0\)이다.

3

10점

\(K = 1\).

4

18점

\(K = 2\).

5

35점

\(K = 3\)이며, \(1 \le i \le N - 1\)에 대해 \(X_i < X_{i+1}\)이고, 모든 \(i\)에 대해 \(Y_i = 0\)이다 (즉, \(X\)가 오름차순 정렬되어 있다).

6

25점

\(K = 3\).

예제 1
입력
5 2
1 5
3 0
3 3
6 12
8 9
출력
5
예제 2
입력
4 2
0 0
0 5
5 0
5 5
출력
5
예제 3
입력
4 1
1 0
2 0
3 0
4 0
출력
2
예제 4
입력
2 1
20 23
5 14
출력
24
힌트

막혔나요? 코인으로 단계별 힌트를 잠금 해제하세요 — 첫 힌트는 가벼운 방향 제시, 뒤로 갈수록 더 많이 알려 줍니다. 문제를 풀면 모든 힌트가 무료로 공개됩니다.

문제 정보

riseoj 작성

출처 올림피아드 > 한국정보올림피아드 > KOI 2023 > 1차 대회 > 초등부 2번 / 고등부 1번

평가 및 의견

대피소

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

Log in to rate problems.

개별 의견

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

풀이 제출

대피소

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