비밀번호 만들기
면접 대비시간 제한1초메모리 제한512 MB
A부터 Z까지 26개 글자로 길이가 M인 비밀번호를 만들 때, 이웃한 두 글자의 거리가 N 이상인 경우의 수를 1,000,000,007로 나눈 나머지로 구합니다.
문제
혜민이는 자신만의 규칙으로 비밀번호를 만들고 싶다. A부터 Z까지 순서대로 부터 까지 번호를 붙인다. 두 알파벳 사이의 거리는 두 알파벳 번호의 차이이다. 혜민이가 자리의 비밀번호를 몇 개나 만들 수 있는지 알고 싶다. 비밀번호를 만드는 규칙은 다음과 같다.
- 이상 이하의 정수 에 대해, 번째 알파벳과 번째 알파벳 사이의 거리가 이상이어야 한다.
- 알파벳은 대문자만 사용한다.
- 알파벳은 중복으로 사용할 수 있다.
예를 들어, , 인 경우, 첫 번째 알파벳이 A이면 AYAY, AYAZ, AZAY, AZAZ, AZBZ를 만들 수 있다. Z이면 ZAYA, ZAZA, ZAZB, ZBZA, ZBZB를, B이면 BZAY, BZAZ, BZBZ를, Y이면 YAYA, YAZA, YAZB를 만들 수 있다. 따라서 개의 비밀번호를 만들 수 있다.
만들 수 있는 비밀번호의 개수를 ()로 나눈 나머지를 구하라.
입력
첫째 줄에 정수 ()과 ()이 공백으로 구분되어 주어진다.
출력
만들 수 있는 비밀번호의 개수를 로 나눈 나머지를 출력한다.