자리 배치 - 구름LEVEL
자리 배치
Quiz Info
자리 배치
100points
Participant
41
Solved Rate
36.5%
10
10


1부터 N까지 번호가 적힌 종이를 N명의 사람 등에 붙여놓았다. 이 번호를 기초로 N명의 사람에게 자리를 배치해주려고 한다. 이때, 자리를 배치하는 규칙은 다음과 같다.

  1. 맨 앞 자리에는 누가 앉아도 상관 없다. 만약 누군가 앉는다면 그 사람은 1 이상 100 이하의 정수 K를 정하고, 모두가 들을 수 있도록 크게 말한다.
  2. 그 사람을 기준으로 뒤에 일렬로 앉되, 자신의 바로 앞에 앉은 사람의 번호가 자신의 번호와 비교하여 K보다 작으면 안 된다.
  3. 그렇게 순서대로 N명의 사람이 2번의 규칙을 만족하며 모두 앉는다.

예를 들어, 총 4명의 사람이 있고 가장 먼저 앉은 사람의 번호가 1, 그리고 K를 2로 정했다고 해보자. 그러면 가장 먼저 앉은 1번 사람 바로 뒤에는 2, 3번 사람이 앉을 수 있다. 4번 사람은 자신의 번호 4가 1보다 3이나 크기 때문에 규칙에 어긋나므로 앉을 수 없다. 만약 1번 사람 바로 뒤에 3번 사람이 앉았다면, 그 다음 3번 사람 뒤에는 2, 4번 모두가 앉을 수 있다. 그 이후로 만약 [1, 3, 4, 2]와 같이 앉았다면 이는 규칙을 만족한다. 하지만 [2, 1, 4, 3]과 같이 앉았다면 4번 바로 앞이 1번이기 때문에 규칙에 어긋난다.

이러한 규칙을 만족하며 N명의 사람을 일렬로 앉히는 경우의 수를 구하는 프로그램을 작성하라.


입력


첫째 줄에 사람의 수 N과 맨 앞 사람이 정하는 수 K가 공백으로 구분되어 주어진다. (단, )


출력


규칙을 만족하며 N명의 사람을 일렬로 앉히는 경우의 수를 출력한다.

이때, 경우의 수가 너무 커질 수 있으므로 1000000007로 나눈 나머지를 출력한다.



Input/Output Example
:
Blank
:
Line Break
:
Tab
Example 1
Input
42
Output
18
Example 2
Input
51
Output
16
Example 3
Input
105
Output
933120
Example 4
Input
310
Output
6
⋇ Please keep the input and output formats carefully
Q & A
누구나 질문하고 답변할 수 있는 Q&A 게시판입니다.
다른 수강생들과 질문과 답변을 주고 받으며 함께 성장하세요!

Registered Questions (0)