Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2019-06-03 18:25:17.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:droom.in, droom.outSursăAGM 2019, runda finala, ziua 1
AutorTamio-Vesa NakajimaAdăugată dextreme77Patrick Sava xtreme77
Timp execuţie pe test2.5 secLimită de memorie256000 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Droom

Excentricul Primar Droom a implementat un nou sistem de drumuri ciudat in municipiul Suieb. Municipiul poate fi reprezentat drept un graf neorientat cu N (1 <= N <= 20 ) noduri si M (M<=10.000) muchii. Se retine ca pot exista si muchii paralele. Intai numara zilele consecutiv, incepand cu ziua 0. In ziua 0, el face toate drumurile cu sens unic, intr-o directie data. De asemenea, defineste f(i) drept suma modulo 2 a cifrelor lui i. Intr-o zi i, daca f(i) = 0, atunci drumurile sunt cu sens unic, in aceeasi directie ca in ziua 0, pe cand, daca f(i) = 1, atunci drumurile sunt cu sens unic, in directie opusa. De asemenea, acesta mai introduce o noua regula: poti trece doar o data pe zi de la o intersectie la alta – desigur, folosind drumurile regulamentare, adica in directia specifica zilei date. Se garanteaza ca acest lucru este posibil in orice intersectie, in orice zi. Gabitza, un cetatean inocent al municipiului, isi pune intrebarea: dandu-se Q( Q <= 200 ), trei valori a, b, c, ($) si presupunand ca Gabitza este la intersectia ai in ziua 0, in cate moduri poate Gabi sa ajunga la intersectia bi in ziua ci, modulo 109+7?

Date de intrare

Fişierul de intrare droom.in va contine pe prima linie un numar T, numarul de teste.
Fiecare test este format din cateva randuri. Primul rand contine doua numere naturale N, M. Urmatoarele M randuri contin perechi de numere a b, reprezentand ca exista un drum intre intersectiile a b si ca drumul este cu sens unic de la a spre b, in ziua 0. Urmatorul rand contine Q. Urmatoarele Q randuri contin valorile ai, bi, ci, in ordine.

Date de ieşire

În fişierul de ieşire droom.out va contine raspunsurile pentru fiecare test, in ordine. La fiecare test, se va afisa raspunsul pentru fiecare cerinta in ordine, pe randuri separate.

Restricţii

  • 1 ≤ N ≤ 20
  • M ≤ 10.000
  • Q ≤ 200
  • 1 ≤ ai,bi ≤ N
  • 0 ≤ ci ≤ 1018
  • T ≤ 50

Exemplu

droom.indroom.out
2
3 7
3 2
3 2
2 1
1 3
3 2
1 3
2 1
3
1 3 7
1 3 6
1 3 6
3 8
1 2
1 2
1 3
2 3
3 2
2 1
3 1
3 1
3
3 2 8
3 2 4
2 1 2
1
0
0
85
5
1
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?