Fişierul intrare/ieşire: | petarbore.in, petarbore.out | Sursă | Baraj Shumen Juniori ICHB-Vianu - 2022 |
Autor | Patrascanu Casian, Peticaru Alexandru | Adăugată de | |
Timp execuţie pe test | 1 sec | Limită de memorie | 65536 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Petarbore
Ministrul Brantz urmeaza sa soseasca maine la Berlint, pentru a negocia cu reprezentativii Westalisului. Dar teroristii westalieni au alte planuri in cap: sa porneasca un razboi.
Berlintul are forma unui arbore cu N noduri (graf conex aciclic), fiecare nod reprezentand o intersectie, valoarea de pe o muchie reprezentand cate minute dureaza sa fie parcursa acea muchie. Teroristii se pot ascunde in orice intersectie. Agentul Twilight incearca sa ii impiedice din a starni un razboi intre Westania si Ostania si vrea sa afle cat timp are la dispozitie pentru a-i opri.
Teroristii opereaza astfel: acestia se ascund in mai multe intersectii, nu neaparat vecine. Fiecare terorist dintr-o intersectie va trimite un semnal posibililor teroristi din intersectiile vecine (legate printr-o muchie care porneste din intersectia curenta). Daca exista un terorist care primeste un semnal, aceasta va detona o bomba. Twilight vrea sa opreasca orice detonare de bomba, asa ca, in caz ca mai multi teroristi vor primi semnale, el este interesat de primul terorist care il primeste.
Twilight va analiza toate combinatiile de intersectii in care teroristii se pot ascunde, si va determina pentru fiecare timpul minim in care un terorist primeste semnal de la un vecin. In final, el vrea sa calculeze expected-ul de cat timp trece pana explodeaza o bomba. Deoarece matematica este unul dintre multele skill-uri pe care le are, Twilight a dedus ca acest expected
E este de forma . El se descurca sa calculeze 2n, dar nu dispune de mult timp pentru a calcula S, asa ca va roaga pe voi sa il aflati. Mai mult, va cere aceasta valoare modulo 998244353. Altfel spus, S este suma timpilor minimi in care explodeaza o bomba, pentru toate combinatiile de intersectii.
Date de intrare
Fişierul de intrare petarbore.in va contine pe prima linie N, reprezentand numarul de noduri ale arobrelui.
Pe urmatoarele N-1 linii se vor afla muchiile arborelui, sub forma x y z reprezentand muchia si timpul necesar pentru ca un semnal din x sa ajunga in y si invers.
Date de ieşire
În fişierul de ieşire petarbore.out va contine un singur numar, reprezentand valoarea S modulo 998244353.
Restricţii
Durata muchiilor va fix maxim 109.
Subtask | Punctaj | Restricţii |
---|---|---|
1 | 20 puncte | 1 ≤ N ≤ 15 |
2 | 20 puncte | 1 ≤ N ≤ 200 |
3 | 20 puncte | 1 ≤ N ≤ 5000 si muchiile vor avea durate de 1 sau 2 |
4 | 20 puncte | 1 ≤ N ≤ 5000 si muchiile vor avea durate diferite |
5 | 20 puncte | 1 ≤ N ≤ 5000 |
Exemplu
petarbore.in | petarbore.out |
---|---|
4 1 2 1 1 3 1 3 4 2 | 10 |
Explicaţie
f({1, 2}) = 1, f({1, 3}) = 1, f({1, 2, 3}) = 1, f({3, 4}) = 2, f({1, 2, 4}) = 1, f({1, 3, 4}) = 1, f({2, 3, 4}) = 2, f({1, 2, 3, 4}) = 1
Restul submultimilor X, in afara de cele enumerate mai sus, au f(X) = 0.
Valoarea S va fi: 1 + 1 + 1 + 2 + 1 + 1 + 2 + 1 = 10. Expected time-ul dupa care explodeaza o bomba va fi , dar din fericire ne trebuie doar S.