Lista de probleme 2

#142 n3579

Pornind de la numărul 1, orice număr natural n se poate obţine aplicând în mod repetat şi convenabil operaţii dintre cele de mai jos:
  • înmulţire cu 3 (operaţie codificată cu 3);
  • adunare cu 5 (operaţie codificată cu 5);
  • adunare cu 7 (operaţie codificată cu 7);
  • împărţire la 9 (operaţie codificată cu 9).

Cunoscând numărul natural n, să se tipărească şirul de operaţii prin care se poate ajunge de la numărul iniţial 1 la numărul final n.

După descoperirea vieţii pe planeta Marte, cercetătorii pământeni au început activitatea de studiere a fiinţelor vii marţiene. Prima constatare a fost că este o legătură strânsă între modul de formare a acestora şi numerele naturale. Astfel, unei specii i s-a asociat un număr natural mai mare decât 1. Mai mult, oricare două specii se pot compune, rezultând altă specie. Numărul asociat noii specii este dat de produsul numerelor asociate celor două specii care se compun. Astfel, modalitatea de obţinere a unei specii nu este unică (o specie ce are asociat numărul 12 se poate obţine compunând specia 2 cu specia 6, sau specia 3 cu specia 4). Evident, unele specii se pot obţine prin compunerea altora (ex. 12) dar unele nu se pot obţine prin compunere. Pe acestea din urmă le vom numi atomi (de exemplu specia ce are asociat codul 7 este atom, şi mai sunt şi altele). O specie se poate compune cu ea însăşi rezultând altă specie (de exemplu, prin compunerea speciei 3 cu ea însăşi se obţine specia 9). De asemenea, dacă specia X se poate obţine prin compunerea speciilor Y şi Z spunem că X are în compoziţie pe Y şi pe Z. Mai mulţi cercetători au recoltat probe obţinând astfel o listă de coduri ale speciilor pe care le-au observat.

Scrieţi un program care, pe baza codurilor din lista formată, să determine:
a) numărul de atomi din listă;
b) numărul de specii din listă care nu pot avea în compoziţie niciun atom dintre cei aflaţi în listă;