Detalii evaluare #5464254

Rezumat problemă

Fie număr natural n. Acestuia i se aplică în mod repetat următoarele transformări:

  • dacă n este par, devine n/2
  • dacă n este impar, devine 3*n+1

În 1937 matematicianul Lothar Collatz a formulat următoarea conjectură: pentru orice număr natural, în urma transformărilor numărul devine 1.

De exemplu, pentru n=6 se obține șirul: 6 3 10 5 16 8 4 2 1, șir care are 9 termeni.

Pentru un n dat, determinați numărul de termeni din șirul de transformări după regula de mai sus.

Detalii

Problema Collatz Operații I/O tastatură/ecran
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #5464254 Utilizator Udrescu Andreea Maria Luciana (AndreeaMLU)
Fișier collatz.cpp Dimensiune 229 B
Data încărcării 24 Iulie 2017, 09:35 Scor / rezultat 0 puncte

Evaluare


Mesaj compilare

collatz.cpp: In function 'int main()':
collatz.cpp:8:14: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
     while(n=!1)

              ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0 secunde Raspuns gresit. 20 0 Exemplu
2 0 secunde Raspuns gresit. 20 0
3 0 secunde Raspuns gresit. 20 0
4 0 secunde Raspuns gresit. 20 0
5 0 secunde Raspuns gresit. 20 0
Punctaj total 0

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Collatz face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.