Florin este iar în Drobeta-Turnu Severin. Din păcate nu a scăpat de hoții de buzunare care îi cauzează atâtea probleme! Aceștia l-au urmărit chiar și aici! Cu toate acestea, el a aflat cum poate sa scape de ei. Drobeta-Turnu Severin este un oraș sub forma de un graf orientat aciclic cu n noduri și m muchii. Pentru ca hoții să îi piardă urma, Florin (care se află în nodul 1) trebuie să ajungă în nodul n pe un anumit traseu. El a reușit să obțină o listă A cu p noduri. În drumul său de la 1 la n el trebuie sa parcurgă aceste p noduri în ordinea în care sunt date, altfel acesta nu va scăpa de hoți!
Cerința
Aflați numărul de trasee posibile de la 1 la n astfel încât să se treacă prin cele p noduri în ordinea în care sunt date. Pentru că rezultatul poate fi foarte mare, se va afișa restul împărțirii acestuia la 1.000.000.007.
Date de intrare
Prima linie se vor citi de la tastatura trei numere naturale n, m și p. Pe a doua linie se vor afla p numere, reprezentând nodurile ce trebuie parcurse de Florin în ordinea în care sunt date. Pe următoarele m linii se vor afla muchiile din graf reprezentate prin câte două numere naturale x și y, cu semnificația că există muchie de la x la y.
Date de ieșire
Pe prima linie va fi afișat pe ecran un singur număr natural reprezentând numărul de astfel de trasee modulo 1.000.000.007.
Restricții și precizări
m, n, p ≤ 1.000.000- ATENȚIE! Pot exista mai multe muchii intre aceleași două noduri!
- Rezultatul se va afișa modulo
1.000.000.007 - Florin ar rezolva singur problema, dar sta atât de mult prin restaurante, încât nu mai are timp nici sa facă palate!
- Problema se numește “scoică” din motive necunoscute lui Sorin.
Exemplu:
Intrare
6 9 3 3 5 6 1 3 1 3 1 2 2 3 2 4 3 4 3 5 4 5 5 6
Ieșire
6
Explicație
Cele 6 drumuri sunt:
1-3-5-6
1-3-4-5-6
1-3-5-6
1-3-4-5-6
1-2-3-5-6
1-2-3-4-5-6
Se observă că 1-3-5-6 apare de doua ori, dar aceasta este datorata faptului că sunt două muchii între 1 și 3. Unul din drumuri folosește una dintre muchii, pe când celălalt folosește cealaltă muchie. Aceeași situație apare și la drumul 1-3-4-5-6.