뒤죽박죽 소 줄 세우기
면접 대비시간 제한1초메모리 제한128 MB
N개의 일련번호(최대 16개)를 나열할 때 이웃한 두 수의 차가 모두 K보다 큰 순열의 개수를 센다.
문제
농부 존의 소 마리 ()는 저마다 서로 다른 고유 번호 ()를 가지고 있다.
소들을 한 줄로 세워 젖을 짤 때, 줄에서 이웃한 두 소의 번호 차이가 항상 ()보다 크면 그 줄을 '뒤죽박죽(Mixed Up)' 줄이라고 부른다. 예를 들어 , 일 때 번호 순서가 인 줄은 '뒤죽박죽'이지만, 인 줄은 이웃한 와 의 차이가 이므로 '뒤죽박죽'이 아니다.
마리의 소를 '뒤죽박죽'으로 세우는 서로 다른 방법의 수를 구하여라.
입력
- 첫째 줄: 두 정수 과 가 공백으로 구분되어 주어진다.
- 둘째 줄부터 째 줄까지: 째 줄에는 소 의 고유 번호 가 하나씩 주어진다.
출력
- 첫째 줄: 마리의 소를 '뒤죽박죽'으로 세우는 방법의 수를 출력한다. 답은 64비트 정수 범위 안에 들어감이 보장된다.
힌트
예제에서 가능한 '뒤죽박죽' 배열은 다음 가지이며, 각 줄은 소들의 번호를 줄 세운 순서대로 나열한 것이다.
3 1 4 2
2 4 1 3