메뉴 건너뛰기

문제

00b61 좋은 집 구하기 (Buy an apartment)   2  

시간메모리제출 올바른 답 비율
1초64MB
355
78
22.0%


나의 횟수나의 최근 판정시도 성공 비율
7457
77.0%
좋은 집 구하기 (Buy an apartment) 

스티브는 집을 구하고 싶어 한다. 스티브가 살고 싶어하는 마을의 거리에는 n개의 집이 일렬로 위치해 있으며, 각 집은 1, 2, 3, 4, ..., \(n\)의 번호가 매겨져 있다. 따라서, 두 집이 서로 '인접'해 있다는 것은 집의 번호가 1 차이가 난다는 것을 의미한다. 예를 들면, 4번 집을 기준으로 인접해 있는 집은 3번과 5번 집이다.

그리고, 그 거리에 있는 n개의 집에는 판매 중인 집과 그렇지 않은 집이 있다.

'판매 중'이라 함은 집이 비어 있어 바로 입주가 가능한 집을 의미하며, 사람이 현재 거주하고 있는 집은 판매할 수 없다.

 

스티브는 바로 인접한 집에 사람이 거주하고 있는, 즉 인접한 집에 이웃이 사는 집을 구매하고 싶다.

따라서, 스티브가 찾고 있는 집은 다음 두 조건을 만족해야 한다. 

 ① 판매 중인 집이어야 하고,

 ② 그 집의 인접한 어느 한 집에는 사람이 거주하고 있어야 한다.

 

예를 들어, 스티브가 살고 싶어하는 거리에 6개의 집이 있고, 3개의 집에는 사람이 거주하고 있으며, 3개의 집이 비어있 어서 판매 중이다. 단, 사람이 거주하고 있는 집의 번호를 모르는 상태이다.

이때, 스티브가 구매할 수 있는 집의 최소 수와 최대 수는 다음과 같다.

① 만약 1, 2, 3 번 집에 사람이 거주하고 있다면, 스티브가 구매할 수 있는 집은 4번 밖에 없다. (1개)

② 만약 1, 3, 5 번 집에 사람이 거주하고 있다면, 스티브가 구매할 수 있는 집은 2, 4, 6번 집이다. (3개)

스티브가 살고 싶은 거리에 일렬로 나열되어 있는 집의 수 \(n\)과 그 중에서 사람이 거주하고 있는 집의 수 \(k\)가 주어질때, 스티브가 사고자 하는 집의  최소 수와 최대 수를 구하는 프로그램을 작성하시오.

입력

첫 줄에는 스티브가 살고 싶어하는 거리에 일렬로 위치한 집의 수 \(n\)과 그 중에서 사람이 거주하고 있는 집의 수 \(k\)가 주어진다. \((1 ≤ n ≤ 10^9, 0 ≤ k ≤ n)\)

출력

스티브가 사고자 하는 집의 최소 수와 최대 수를 출력하시오.

예시
1입력
6 3
출력
1 3
출처
Codeforces Round #433 (Div. 2)
위로