
Cerință
Conform alchimiștilor medievali, universul este compus din patru elemente de bază: apa, aer, pamant și foc. Plecând de la aceste elemente, se pot realiza reacții alchimice pentru a obține noi substanțe.
Vi se dă o listă de reacții, fiecare de forma:
care descrie că, dacă aveți simultan la dispoziție elementele , puteți obține elementul rezultat. Elementele nu se consumă la aplicarea unei reacții — odată obținut, un element rămâne disponibil pentru reacțiile ulterioare.
Obiectivul vostru este să determinați o secvență de reacții care duce, pornind de la cele patru elemente de bază, la obținerea elementului piatra-filozofala.
Date de intrare
Prima linie conține numărul întreg . Urmează linii, fiecare descriind o reacție în formatul de mai sus. Niciun element nu apare de două ori în partea stângă a aceleiași reacții.
Date de ieșire
Pe prima linie, afișați numărul de reacții din secvența voastră. Urmează linii, fiecare conținând o reacție (dintre cele reacții disponibile), în ordinea aplicării lor, astfel încât la momentul aplicării fiecărei reacții toate elementele din stânga să fie deja disponibile, iar la final piatra-filozofala să fie disponibilă.
Orice secvență validă cu cel mult reacții este acceptată.
Restricții și precizări
- Numărul total de elemente distincte este cel mult (inclusiv cele patru elemente de bază)
- Fiecare reacție are cel mult elemente în partea stângă
- Numele elementelor sunt formate din litere mici ale alfabetului latin, cifre și cratimă (
-), cu lungime de cel mult de caractere - Se garantează că
piatra-filozofalapoate fi obținută pornind de la cele patru elemente de bază
| Subtask | Restricții | Punctaj |
|---|---|---|
| 1 | , | |
| 2 | Fiecare reacție are exact un element în partea stângă () | |
| 3 | Fără constrângeri suplimentare |
Exemplu
stdin
8
apa + foc => aburi
aer + pamant => noroi
aburi + noroi => ceata
foc + pamant => carbune
ceata + carbune => piatra-filozofala
apa + aer => vant
foc + vant => lumina
pamant + aer + foc => taran
stdout
5
apa + foc => aburi
aer + pamant => noroi
aburi + noroi => ceata
foc + pamant => carbune
ceata + carbune => piatra-filozofala
Explicație
Cele trei reacții de la final (vant, lumina, taran) nu sunt necesare pentru a obține piatra-filozofala și nu apar în output. Ordinea reacțiilor din output poate varia; orice secvență validă este acceptată.