고행
시간 제한0.6초메모리 제한256 MB
1부터 N까지의 순열 가운데, 각 날의 시간 구간 안에서 연속한 문장을 읽는 최적 일정으로 경전을 정확히 K일에 끝내는 순열의 개수를 센다.
문제
어느 날 JOI군은 타임머신을 얻었다. 그는 9세기 일본으로 가기로 했다. 그곳에서 당시 일본에서 가장 유명한 승려 중 한 명인 구카이를 만났다. 구카이는 새로운 수행법을 개발하려 했다.
그의 수행은 다음과 같이 진행된다.
- 구카이는 N개의 문장으로 이루어진 경전을 읽는다. 문장에는 순서가 있고, 그는 순서대로 읽어야 한다.
- 각 문장에는 1 이상 N 이하의 정수가 하나씩 적혀 있다. 서로 다른 두 문장에 같은 수가 적혀 있지는 않다.
- 그는 하루를 똑같이 N등분한 N개의 시간 구간 중 i번째 구간에서 정수 i (1 ≤ i ≤ N)가 적힌 문장을 읽어야 한다. 각 문장은 매우 짧아서 한 구간 안에 문장을 읽는 것은 항상 가능하다.
구카이는 경전 전체를 최대한 빨리 읽고 싶어 한다. 하지만 경전을 다 읽는 데 며칠이 걸리는지는 경전의 문장에 적힌 정수에 따라 달라진다. JOI군은 구카이로부터, 구카이가 최적으로 읽었을 때 정확히 K일 만에 경전을 다 읽게 되는 문장 정수 배치의 수를 세어 달라는 부탁을 받았다.
문장의 수 N과 정수 K가 주어졌을 때, 구카이가 최적으로 읽었을 때 정확히 K일 만에 경전을 다 읽게 되는 문장 정수 배치의 수를 1 000 000 007로 나눈 나머지로 계산하라.
입력
표준 입력에서 다음 데이터를 읽는다.
- 첫째 줄에 N과 K가 공백 하나를 사이에 두고 주어진다.
출력
구카이가 최적으로 읽었을 때 정확히 K일 만에 경전을 다 읽게 되는 문장 정수 배치의 수를 1 000 000 007로 나눈 나머지로 출력하라.
제한
- 1 ≤ N ≤ 100 000.
- 1 ≤ K ≤ N.