A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre. Adott egy irányítatlan gráf () csúccsal és () éllel. Számítsuk ki, hogy hányféleképpen lehet az éleket úgy irányítani, hogy minden csúcsból legfeljebb egy él induljon ki. Adjuk meg ennek a számnak az 1 000 000 007-tel vett osztási maradékát. A program olvassa be a standard input első sorából -et és -et, majd a következő sorból az , () szóközzel elválasztott egészeket, melyek mindegyike egy-egy irányítatlan él két végpontját jelöli. Mivel a gráf nem feltétlenül egyszerű, ezért ugyanaz a számpár többször is szerepelhet a bemenetben. Írjuk a standard output első és egyetlen sorába a lehetőségek számát modulo 1 000 000 007.
Pontozás és korlátok: A programhoz mellékelt, a helyes megoldás elvét tömören, de érthetően leíró dokumentáció 1 pontot ér. A programra akkor kapható meg a további 9 pont, ha bármilyen hibátlan bemenetet képes megoldani az 1 mp futásidőkorláton belül. Részpontszámok a következőkre kaphatóak:
| a program -ra megoldást ad; |
| a program -re megoldást ad. |
Beküldendő egy tömörített s88.zip állományban a program forráskódja (s88.pas, s88.cpp, ) az .exe és más, a fordító által generált állományok nélkül, valamint a program rövid dokumentációja (s88.txt, s88.pdf, ), amely a fentieken túl megadja, hogy a forrás mely fejlesztői környezetben fordítható. |