Proba de 100 metri plat este una dintre cele mai populare și prestigioase probe din cadrul oricărui concurs de atletism. Recordul modial al acestei probe este deținut în prezent de sportivul jamaican Usain Bolt cu timpul de secunde.
Uneori lupta dintre sportivi este atât de strânsă încât diferențierea dintre atleți se poate face doar cu ajutorul camerelor de luat vederi ce surprind finish-ul atleților. Au existat cazuri când doi sau mai multi atleți au fost declarați la egalitate.
Cerinţă
Considerând atleți, ce participă la o cursă de 100 metri plat, identificați prin numerele să se scrie un program care determină numărul al clasamentelor distincte care pot fi obținute după finalizarea cursei. De exemplu, pentru , se pot obține clasamente distincte: ; unde reprezintă situația când ambii atleți s-au clasat la egalitate.
Date de intrare
Fişierul de intrare 100m.in
conţine pe prima linie numărul natural , cu semnificaţia de mai sus.
Date de ieșire
Fişierul de ieşire 100m.out
va conţine pe prima linie restul împărţirii numărului la .
Restricții și precizări
- Două clasamente se consideră distincte dacă diferă prin cel puțin o poziție;
- Pentru teste în valoare de de puncte .
Exemplul 1
100m.in
3
100m.out
13
Explicație
atleți.
Numerotând atleții cu , și există clasamente distincte: ; ; ; ; ; ; ; ; ; ; ; ; .
Prin am notat posibilitatea ca atleții și să termine cursa în același timp. Prin am notat posibilitatea ca atleții și să termine cursa în același timp.
Exemplul 2
100m.in
1771
100m.out
74140
Explicație
atleți.
Numărul de clasamente distincte în care atleții pot termina cursa, modulo , este