Ana are o temă lungă şi plictisitoare la chimie: are o listă de ecuaţii chimice şi trebuie să determine care dintre acestea sunt corecte. Pentru fiecare ecuaţie este specificată o formulă chimică ce constituie membrul stâng al ecuaţiei şi o listă de formule din care Ana trebuie să aleagă formulele ce ar putea fi plasate în membrul drept.
O formulă este un şir de caractere (fără spaţii) care conţine unul sau mai mulţi compuşi chimici separaţi prin caracterul '+'. Fiecare compus chimic poate fi precedat de un număr natural (cu care se va înmulţi întregul compus).
Un compus chimic este constituit din unul sau mai multe elemente chimice, fiecare element fiind eventual urmat de un numar natural (care multiplică doar elementul respectiv).
Un element chimic este un atom (identificat printr-o literă mare sau o literă mare urmată de o literă mică) sau un compus chimic încadrat între paranteze rotunde.
O formulă poate fi plasată în membrul drept al ecuaţiei dacă numărul total de apariţii ale fiecărui atom din membrul stâng coincide cu numărul total de apariţii ale aceluiaşi atom în formula din membrul drept.
Să considerăm formula: C2H5OH+3O2+3(SiO2). În această formulă:
atomul de carbon (C) apare de douã ori;
atomul de hidrogen (H) apare în total de 6 ori (5 + 1);
atomul de oxigen (O) apare în total de 13 ori (1 + 3*2 + 3*2);
atomul de siliciu (Si) apare în total de 3 ori
Cerinţă
Scrieţi un program care să determine care dintre ecuaţiile posibile sunt corecte.
Date de intrare
Fişierul de intrare chimie.in conţine pe prima linie o formulă chimica care constituie membrul stâng al unei ecuaţii. Pe cea de a doua linie este scris un număr natural N care reprezintă numărul de formule chimice ce urmează a fi plasate în membrul drept al ecuaţiei. Pe fiecare dintre următoarele N linii este scrisă o formulă chimică.
Date de ieşire
Fişierul de ieşire chimie.out va conţine N linii, câte una pentru fiecare ecuaţie posibilă. Pe linia i va fi scrisă formula chimică din membrul stâng, urmată de == sau !=, apoi de cea de a i-a formulă chimică din lista formulelor pentru membrul drept (aflata pe linia i+2 în fişierul de intrare). Se utilizează == dacă numărul total de apariţii ale fiecărui atom dintr-un membru este egal cu numărul total de apariţii ale aceluiaşi element în formula din celălalt membru, respectiv != în caz contrar. Formulele trebuie să fie scrise exact ca în fişierul de intrare.
Restricţii
O ecuaţie are cel mult 100 de caractere.
2 ≤ Numerele cu care se înmultesc atomii/compusii chimici sunt ≤ 10000
Dacă un atom nu este urmat de un număr se consideră că el apare o singură dată.
Dacă un compus chimic nu este precedat de un număr se contorizează o singura apariţie a sa.