Mai intai trebuie sa te autentifici.
Diferente pentru problema/funnygraph intre reviziile #18 si #10
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="funnygraph") ==
Ţara Bugland este formată din $N$ oraşe. Fiind o ţară nouă, cele $N$ oraşe nu sunt unite de niciun drum, astfel, guvernul a decis să pornească un proiect care va dura exact $M$ zile şi care are ca scop crearea unei reţele de drumuri între cele $N$ oraşe. În fiecare zi a proiectului muncitorii din Bugland construiesc două drumuri noi unidirecţionale, un drum de la oraşul $x$ la oraşul $y$ cu cost $z$ şi un alt drum de la oraşul $y$ la oraşul $x$ cu cost $-z$. După fiecare zi, locuitorii din Bugland îşi pun următoarea întrebare: există o modalitate de a numerota oraşele astfel încât dacă există o muchie de la oraşul $x$ la oraşul $y$, costul muchiei să fie $C{~x~}-C{~y~}$, unde $C{~i~}$ este numărul atribuit oraşului $i$?
Se dau initial N noduri si se fac M update-uri asupra lor de forma uneste nodul x cu nodul y printr-o muchie unidirectionala de cost z si nodul y cu nodul x cu o muchie unidirectionala de cost -z sa se raspunda dupa fiecare update daca exista o modalitate de a pune costuri pe noduri astfel incat diferenta intre valorile a 2 noduri adiacente x si y sa fie costul muchiei de la x la y.
h2. Date de intrare
Din $funnygraph.in$se vorciti de pe prima linie douănumere $N$şi $M$, numărul de oraşerespectivdurata proiectului. Pe următoarele $M$ linii se găsesc câtetreinumere $x, y,z$ reprezentând drumurile construiteînfiecarezi.
Fişierul de intrare $funnygraph.in$ are pe prima linie doua numere $N$ si $M$, numarul de noduri respectiv numarul de updateuri. Pe urmatoarele $M$ linii se gasesc cate $3$ numere $x, y si z$ reprezentand ca se adauga o muchie de cost $z$ de la $x$ la $y$.
h2. Date de ieşire
În $funnygraph.in$ se vor găsi $M$ linii, pe linia $i$ fiind_YEP :)_dacă există o modalitate de a numerotaoraşele, sau _NOPE :/_în caz contrar.
În fişierul de ieşire $funnygraph.out$ se vor gasi $M$ linii, pe linia $i$ fiind $"YEP :)"$ sau $"NOPE :/"$ in caz contrar.
h2. Restricţii
* <tex>1 \leq N \leq 5 \cdot 10^4</tex> * <tex>1 \leq M \leq 10^5</tex> * <tex>-10^9 \leq z_i \leq 10^9\ \forall\ 1 \leq i \leq M</tex> * <tex>0 \leq x_i, y_i \leq N - 1\ \forall\ 1 \leq i \leq M</tex> * Pentru teste in valoare de $30$ de puncte, <tex>1 \leq N \leq 10^3$ ; $1 \leq M \leq 10^4</tex> * Bugland poate avea drumuri multiple între două oraşe sau chiar drumuri de la un oraş la el însuşi.
* $1 ≤ N ≤ 10^5^$ * $1 ≤ M ≤ 10^6^$ * $-10^9^ ≤ z ~i~ ≤ 10^9^$ pentru orice $i$ * $0 ≤ x ~i~, y ~i~ ≤ N - 1$ pentru orice $i$ * Pentru teste in valoare de $30$ de puncte, $1 ≤ N * M ≤ 10^7^$
h2. Exemplu table(example). |_. funnygraph.in |_. funnygraph.out | | 4 5
0 1 1 1 3 -1 3 0 0 3 2 4 2 0 3 | YEP :) YEP :) YEP :) YEP :) NOPE :/ |
0 1 1 1 3 -1 3 0 0 3 2 4 2 0 3 | YEP ;) YEP ;) YEP ;) YEP ;) NOPE :(( | h3. Explicaţie ...
== include(page="template/taskfooter" task_id="funnygraph") ==