¿La página no carga? Prueba haciendo clic aquí.
Placeholder

#1152

피라미드 경우의 수 1s 64MB

Problemas

한 줄에 N개의 숫자가 적혀있다. 그리고 그 윗줄에는 N-1개의 숫자가 적혀있으며, 이 줄의 i번째 숫자는 아랫줄의 i번째 숫자와 i+1번째 숫자의 합과 같다. 또한 아래에 적힌 숫자는 윗줄에 적힌 숫자 중 한 숫자보다 작아야 한다.

N-1개의 숫자가 적힌 줄 위에는 N-2개의 숫자가 적힌 줄이 존재하며 앞서 이야기 한 조건을 만족해야하며, 한 줄에 적히는 숫자가 1개가 될 때까지 반복된다.

예를 들어 처음에 2,1,2,4 가 적혔을 경우, 가능한 예는 다음과 같다.​

   

이러한 조건을 만족하는 구조를 "숫자 피라미드"라고 한다. 

 

두개의 피라미드에 적힌 숫자가 모두 동일할 경우 두개의 피라미드는 같은 피라미드라고 한다.

 

맨 윗줄의 숫자와 맨 밑줄에 적히는 숫자들의 개수가 주어졌을 때, 서로 다른 숫자 피라미드의 개수를 출력하는 프로그램을 작성하라.

 

단, 맨 아랫줄에는 1이상의 정수로 이루어져 있다.


Entrada

한 줄로 이뤄지며, 맨 밑줄에 적히는 숫자들의 개수 N(2≤N≤1,000,000)과 맨 위에 적히는 숫자 T(1≤T<1,000,000)가 주어진다.

 


Salida

입력에 대해 서로 다른 숫자 피라미드의 개수를 출력한다. 출력시 1,000,000,007로 나눈 나머지를 출력한다.​


Ejemplo #1

3 5
2

Ejemplo #2

5 16
1

Ejemplo #3

4 15
24


Fuente

Online Contest
Debes iniciar sesión para escribir código.