Permutacions i cicles (2) P64069


Statement
 

pdf   zip

Feu un programa que compti quantes permutacions de {1,,n}\{1, \ldots, n\} hi ha amb exactament kk cicles, on 1kn1 \le k \le n.

Per exemple, de les sis permutacions de {1,2,3}\{1, 2, 3\}, n’hi ha:

  • dues amb un cicle, que són: (2,3,1)(2, 3, 1) i (3,1,2)(3, 1, 2).

  • tres amb dos cicles, que són: (2,1,3)(2, 1, 3), (1,3,2)(1, 3, 2) i (3,2,1)(3, 2, 1).

  • una amb tres cicles, que és: (1,2,3)(1, 2, 3).

Entrada

L’entrada consisteix en diversos casos, cadascun amb nn i kk, tals que 1kn10001 \le k \le n \le 1000.

Sortida

Per a cada cas, compteu el nombre de permutacions de {1,,n}\{1, \ldots, n\} amb kk cicles. Com que el resultat pot ser molt gran, feu els càlculs mòdul 108+710^8 + 7.

Observació

Sigui cc el nombre de casos. La solució esperada té cost total O(10002+c)O(1000^2 + c). Es poden obtenir fins a 80 punts si es passen jocs de proves on n100n \le 100, amb una solució de cost O(1003+c)O(100^3 + c).

Information
Author
Enric Rodríguez
Language
Catalan
Other languages
English
Official solutions
C++
User solutions
C++