Termite

Time limit: 0.4s Memory limit: 32MB Input: termite.in Output: termite.out

În lipsa prințesei cu ochii verzi, tărâmul ei fermecat a fost invadat de termite! Se știe despre tărâmul fermecat că este organizat sub forma unui graf conex neorientat, în care fiecare muchie are atribuită o lungime. Prințesa nu poate să combată această invazie, însă ea a aflat informații prețioase despre aceste termite. Se știe că invazia a pornit simultan din exact KK noduri, la un moment de timp pe care îl vom nota cu 00. Aceste termite, o dată aflate într-un nod, îl manâncă instant, se înmultesc și pornesc pe muchiile incidente nodului către nodurile vecine. Astfel, dacă o termită ajunge într-un nod la un moment de timp TT, tot în același moment termitele îl vor mânca, se vor înmulți și vor porni către celelalte noduri. Prințesa mai știe de altfel că timpul lor de deplasare este constant și că acestea parcurg o muchie de lungime LL exact în LL secunde. Un nod o dată mâncat, acesta va dispărea din graf, însă nu neapărat și muchiile incidente lui (muchia va ramâne în graf atâta timp cât este incidentă cel puțin unui nod). Altfel zis, o muchie va dispărea doar atunci când ambele noduri de la capete ei vor fi mâncate.

Prințesa nu își poate salva întregul regat, însă ar dori să știe dacă ar putea salva unele comori care se află în anumite noduri ale grafului. Astfel, ea va va pune QQ întrebări de forma A B TA\ B\ T cu următoarea semnificație: știind că prințesa se află la momentul TT în nodul AA, iar comoara se află în nodul BB, câte secunde se vor scurge până când nu va mai exista niciun drum între ea și comoară (aceasta se poate întampla și în cazurile în care nodul AA sau nodul BB este mâncat). Dacă încă din momentul TT nu există niciun drum între cele două noduri, atunci se va afișa 00.

Cerință

Ajutați-o pe prințesă, raspunzând corect la toate cele QQ întrebari.

Date de intrare

Fișierul de intrare termite.in conține pe prima linie 44 numere naturale: nn – numărul de noduri ale grafului, mm - numărul de muchii ale grafului, kk – numărul de noduri din care au pornit termitele și QQ – numărul de întrebări. A doua linie a fișierului va conține kk valori, semnificând indicele nodurilor unde au apărut în momentul 00 termitele. Următoarele mm linii vor conține cate 33 valori : a,ba, b și LL, însemnând că între nodurile aa și bb există o muchie de lungime LL. Următoarele QQ linii din fișierul de intrare vor reprezenta query-urile, în forma A B TA \ B \ T, însemnand câte secunde mai are prințesa începând de la momentul de timp TT până când nu va mai exista drum între nodurile AA și BB.

Date de ieșire

Fișierul de iesire termite.out va conține QQ linii cu câte un singur număr natural reprezentând răspunsurile la cele QQ întrebari.

Restricții și precizări

  • 1n,k300 0001 ≤ n, k ≤ 300 \ 000
  • 1m,Q400 0001 ≤ m, Q ≤ 400 \ 000
  • Lungimile muchiilor sunt numere naturale mai mici decât 1 0001 \ 000

Exemplu

termite.in

5 6 1 3
5
1 2 3
1 5 3
2 3 2
2 4 1
3 4 1
3 5 2
1 3 1
1 4 3
2 5 1

termite.out

1
0
0

Log in or sign up to be able to send submissions!