1339: 서윤이의 이상한 컴퓨터
[만든사람 : 39기 오정민]
문제 설명
컴퓨터는 기본적으로 모든 정보를 이진수로 인식한다. 예를 들어, 8이라는 정보는 컴퓨터는 1000의 이진수로 변환하여서 인식한다.
그런데, 서윤이의 컴퓨터는 이상하다. 서윤이의 컴퓨터는 이진수를 입력받았을 때, 이 이진수를 그대로 인식하는 것이 아니다.
사용자가 입력하는 이진수의 i번째 비트는 서윤이의 컴퓨터가 인식하는 이진수의 j번째 비트에 위치하고, | i - j | ≤ D 의 관계를 만족한다.
우리는 특정 이진수를 입력하였을 때, 서윤이의 컴퓨터가 인식할 수 있는 이진수 후보의 개수와 이 중 K번째로 작은 이진수를 구하는 것이 목표이다.
입력 설명
첫 줄에는 이진수 비트의 개수 n과 D, k가 주어진다.
두 번째 줄에는 비트가 n개인 이진수가 주어진다.
입력값의 범위
(1<= N <= 2000)
(0<= D < n)
(1<= K <= 10^8)
출력 설명
첫 번째 줄에는 서윤이의 컴퓨터가 인식할 것이라 생각되는 이진수 후보의 개수를 출력한다.
두 번째 줄에는 이 후보 중 K번째로 작은 이진수를 출력한다.
입력 예시 Copy
4 0 1
1110
출력 예시 Copy
1
1110