시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 1024 MB 1 1 1 100.000%

문제

Vinícius gosta muito de se exercitar na academia de ginástica. Ele fez um acordo com o seu treinador para ter programas de exercícios diferentes a cada vez que usar a bicicleta ergométrica. Um programa, na linguagem das academias, é uma sequência de níveis de dificuldade do exercício. Os programas de Vinícius para a bicicleta ergométrica devem ter a mesma duração em minutos e os níveis de dificuldade devem mudar a cada minuto, para um nível imediatamente acima ou um nível imediatamente abaixo. Os níveis de dificuldade não podem estar abaixo de um mínimo e nem acima de um máximo previamente estipulados.

Seu problema é calcular o número de programas diferentes que o treinador pode construir, obedecidas as restrições acima.

입력

A entrada consiste de uma única linha que contém três inteiros, T, M, N (1 ≤ T ≤ 50, 1 ≤ M < N ≤ 105) em que T é o número de minutos do exercício, M é o valor mínimo de dificuldade permitido e N é o valor máximo de dificuldade permitido.

출력

Seu programa deve produzir uma única linha com um inteiro representando o número de programas diferentes que o treinador pode construir. Como esse número pode ser grande, a resposta deve ser esse número módulo 109 + 7.

예제 입력

3 2 5

예제 출력

10

예제 입력 2

30 2 5

예제 출력 2

4356618

예제 입력 3

50 1 100000

예제 출력 3

738072143

힌트