Cerință
Pentru a o salva pe soția sa, Maki, Sushi Cat a ajuns într-un spațiu abstract vectorial non-eucli... arbore. Acesta are noduri numerotate de la la , este înrădăcinat în nodul , iar fiecare muchie are o greutate asociată. Sushi Cat "cade" de la rădăcină spre frunze. Atunci când acesta ajunge la un nod ce are mai mult de un fiu, poate cădea în oricare cu probabilitate proporțională cu valoarea muchiei către acesta. Spre exemplu, dacă un nod are doi fii și muchia spre primul fiu are cost , iar spre celălalt fiu , atunci are probabilitate să continue spre primul fiu, și spre celălalt.
Într-un final, Sushi Cat ajunge într-una din frunze. Dar nu se oprește acolo! Arborele se înrădăcinează în frunza în care tocmai a ajuns, iar jocul se repetă de încă ori. La final, el este prea amețit să știe unde s-a oprit. Așa că vă cere vouă să aflați pentru fiecare frunză a arborelui (inclusiv rădăcina, dacă are un singur vecin), probabilitatea ca el să se fi oprit acolo la finalul aventurii.
Date de intrare
Pe prima linie se găsesc numerele întregi și . Următoarele linii conțin triplete de forma , reprezentând faptul că există o muchie bidirecțională de la nodul la nodul de greutate .
Date de ieșire
Pentru fiecare frunză a arborelui în ordine crescătoare (inclusiv rădăcina, dacă are un singur vecin), se cere probabilitatea ca Sushi Cat să se fi oprit în frunza respectivă. Dacă probabilitatea cerută este un număr real de forma , atunci se cere să se afișeze , unde prin am notat inversul modular al lui modulo .
Restricții și precizări
- ;
- ;
- ;
- Pentru teste în valoare de de puncte, ;
- Pentru alte teste în valoare de de puncte, ;
- Pentru alte teste în valoare de de puncte, arborele este un lanț;
- Pentru alte teste în valoare de de puncte, ;
- Pentru alte teste în valoare de de puncte, nu există restricții suplimentare.
Exemplul 1
stdin
5 0
1 2 1
2 3 2
3 4 1
3 5 2
stdout
0
333333336
666666672
Explicație
Acesta este arborele reprezentativ pentru exemplu. Sushi Cat va cădea din nodul și va ajunge cu probabilitate până în nodul . De acolo, are probabilitate să continue spre și să continue spre . Astfel, rezultatul este următorul:
- Pentru frunza , probabilitate ;
- Pentru frunza , probabilitate , deci vom afișa
- Pentru frunza , probabilitate , deci vom afișa
Exemplul 2
stdin
5 1234576
1 2 1
2 3 2
3 4 1
3 5 2
stdout
701387956
456084865
842527194