Problem A. Suma de Niveles del Triángulo de Pascal

Anuncio
VI Maratón Interna(CIONAL) de Programación, Universidad Tecnológica de Pereira - UTP 2015
Pereira Risaralda, Colombia, Abril 11, 2015.
Problem A. Suma de Niveles del Triángulo de Pascal
Source file name:
Input:
Output:
Setter(s):
pascal.c, pascal.cpp or pascal.java
Standard
Standard
Hugo Humberto Morales Peña
Según Wikipedia: “el triángulo de Pascal es una representación de los coeficientes binomiales ordenados
en forma triangular. Es llamado así en honor al matemático francés Blaise Pascal, quien introdujo esta
notación en 1654, en su Traité du triangle arithmétique. Si bien las propiedades y aplicaciones del triángulo
fueron conocidas con anterioridad al tratado de Pascal por matemáticos indios, chinos o persas, fue Pascal
quien desarrolló muchas de sus aplicaciones y el primero en organizar la información de manera conjunta”.
El triángulo de Pascal es un triángulo de números enteros, infinito y simétrico, empieza con un 1 en la
primera fila (nivel cero del triángulo), y en las filas siguientes se van colocando números de forma que
cada uno de ellos sea la suma de los dos números que tiene encima. Se supone que los lugares fuera del
triángulo contienen ceros, de forma que los bordes del triángulo están formados por unos.
La siguiente imagen contiene los primeros niveles del triángulo de Pascal (del nivel 0 al nivel 6):
1
1
1
1
1
1
1
..
.
2
3
4
5
6
1
3
6
10
15
1
1
4
10
20
..
.
1
5
15
1
6
1
..
.
En este problema lo que se quiere es calcular la suma de todos los elementos del Triángulo de Pascal desde
el nivel m hasta el nivel n.
Input
La entrada puede contener varios casos de prueba. Cada caso de prueba se presenta en una línea independiente y contiene dos números enteros positivos m y n (0 ≤ m ≤ n ≤ 1000). La entrada finaliza con
un caso de prueba en el que m y n toman valor de -1, caso que no debe ser procesado.
Output
Para cada caso de prueba de la entrada, se debe imprimir el resultado de la suma de todos los elementos
de los niveles del m al n módulo 1000007. Cada caso valido de entrada debe generar una línea de salida.
Samples
Input
0 0
1 2
1 3
4 6
-1 -1
Output
1
6
14
112
Page 1 of 1
Descargar