함수
시간 제한2초메모리 제한512 MB
정의역과 공역이 {1, …, n}인 함수 중에서, 충분히 반복해 적용했을 때 도달하는 값들의 집합 크기가 정확히 k인 함수의 개수를 1,000,000,007로 나눈 나머지로 구한다.
문제
이 문제에서 함수는 1부터 까지의 정수를 1부터 까지의 정수로 보내는 함수를 뜻한다. 예를 들어 일 때 , , 은 가능한 함수 의 한 예이다.
는 다음과 같이 정의한다.
- 모든 올바른 에 대해
- 모든 올바른 와 에 대해
새로운 표현은 다음과 같이 정의한다.
- 는 인 와 이상인 에 대한 값의 집합이다.
- 는 의 크기이다.
- 는 모든 음이 아닌 정수 에 대한 의 최솟값이다.
- 는 인 함수 의 집합이다.
과 가 주어졌을 때, 의 크기를 1,000,000,007로 나눈 나머지를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 과 가 공백으로 구분되어 주어진다. (, )
출력
첫째 줄에 의 크기를 1,000,000,007로 나눈 나머지를 출력한다.
힌트
이면 함수를 모두 4개 만들 수 있다. 이를 각각 , , , 라고 하면 다음과 같다.
- ,
- ,
- ,
- ,
와 는 에 속하고, 와 는 에 속한다.