Mitruţ are primele N numere naturale nenule şi un arbore cu rădăcină cu N noduri. El se întreabă în câte feluri poate plasa cele N numere în nodurile arborelui, astfel încât fiecare nod să conţină un număr mai mic decât toate numerele din fiii săi.
Cerinţă
Scrieţi un program care să răspundă la întrebarea lui Mitruţ prin afişarea numărului de modalităţi distincte de plasare a numerelor în arbore conform metodei de mai sus, modulo 666013.
Date de intrare
Fişierul arbore1.in conţine pe prima linie numărul N cu semnificaţia din enunţ. Următoarele N–1 linii vor conţine fiecare câte două numere întregi x y, cu semnificaţia că există muchie între nodurile x şi y.
Date de ieşire
Fişierul arbore1.out va conţine un singur număr reprezentând răspunsul la întrebarea lui Mitruţ, modulo 666013.
Restricţii
• 1 ≤ N ≤ 100 000
• Pentru 70% din teste N ≤ 2 000
• Rădăcina arborelui este nodul 1
• Pentru 10% din teste N ≤ 7
• Arborele dat nu este neapărat binar (un nod poate avea mai mult de doi fii).
Exemple
arbore1.in
arbore1.out
Explicaţii
5
1 2
3 1
2 4
2 5
8
Modurile în care putem plasa numerele în nodurile arborelui dat sunt: