(Qualsevol similitud de la història que segueix amb la realitat és pura coincidència.)
Per celebrar els èxits obtinguts al SWERC 2013, “el Roura” va incitar tot l’equip a sortir de partyhard. L’equip va parar en un antre anomenat Easy Bar, on va començar la part seriosa de la competició. Després de molta estona, finalment va tocar pagar les begudes, però ningú no recordava quantes birres s’havia pres. Afortunadament, molts sabien què havien begut en relació a altres persones. (Potser una persona x sabia que s’havia pres un terç del que s’havia pres una altra persona y, etcètera.)
Podeu deduir la quantitat de cerveses bi que va beure cadascú?
Entrada
L’entrada consisteix en diversos casos. Cada cas comença amb el nombre total de birres begudes b, seguit del nombre de persones p, seguit d’un nombre r, seguit de les r relacions, cadascuna amb x y n i d, amb x ≠ y, indicant que la persona x ha begut n/d vegades el que ha begut la persona y. Suposeu 1 ≤ b ≤ 109, 1 ≤ p ≤ 104, 0 ≤ r ≤ 10p, que les persones es numeren entre 0 i p−1, que n i d estan entre 1 i 106, i que no hi ha més d’una relació de cada x a cada y.
Sortida
Per a cada cas, escriviu la bi de cadascú. Si hi ha solució única, sempre serà entera. Si hi ha més d’una solució possible (entera o no), o si les dades donades són contradictòries, cal escriure “moar beer pls”. Escriviu una línia amb 20 guions després de cada cas.
Observació
Encara que els jocs de proves no contenen casos particularment malèvols, potser us caldrà fer els càlculs amb long longs per evitar overflows.
Input
5 1 0 8 2 1 0 1 7 1 8 3 1 0 1 7 1 12 3 2 2 1 3 2 1 0 100 50 12 3 4 2 1 3 2 1 0 100 50 1 2 4 6 0 2 1 3 12 3 3 2 1 3 2 1 0 100 50 0 2 2 5 1000000000 2 1 1 0 1 1
Output
0: 5 -------------------- 0: 7 1: 1 -------------------- moar beer pls -------------------- 0: 2 1: 4 2: 6 -------------------- 0: 2 1: 4 2: 6 -------------------- moar beer pls -------------------- 0: 500000000 1: 500000000 --------------------