P0017. Siracusa ataca de nou

Sigui nn un natural qualsevol més gran que zero. Considereu aquest algorisme:

Per exemple, començant amb 6 s’obté 631051684216 \to 3 \to 10 \to 5 \to 16 \to 8 \to 4 \to 2 \to 1.

La conjectura 3n+13n + 1 diu que començant en qualsevol n>0n > 0, sempre s’arriba a 1. Encara que no se n’ha trobat cap demostració, sí que s’ha pogut comprovar, mitjançant ordinadors, que la conjectura és certa per a tota n4035225266123964416n \le 4035225266123964416.

Feu un programa que llegeixi dos naturals mm i pp i escrigui quins naturals entre 1 i mm arriben a 1 en pp o més passos. També cal dir fins a on de lluny arriben tots aquests mm nombres, és a dir, quin és el nombre més gran contingut en les seves successions.

El vostre programa ha d’implementar i usar l’acció

    void convergeix(int n, int& k, int& lluny);

que, donat un enter estrictament positiu |n|, desa al paràmetre |k| el nombre de passos que triga |n| en arribar a 1, i desa al paràmetre |lluny| el nombre més gran que s’hagi vist en el procés. Per exemple, |convergeix(6, k, lluny);| desa un 8 a |k| i un 16 a |lluny|. Similarment, |convergeix(4, k, lluny);| desa un 2 a |k| i un 4 a |lluny|, i |convergeix(1, k, lluny);| deixa un 0 a |k| i un 1 a |lluny|.

Entrada

L’entrada són dos naturals mm i pp, amb 1m500001 \le m \le 50000.

Sortida

Cal escriure tots els nombres entre 1 i mm que arriben a 11 en pp o més passos, un per línia. A més, cal escriure el nombre més gran que s’ha produït, seguint el format dels exemples.

Informació del problema

Autoria: Professorat de P1

Generació: 2026-01-25T10:09:38.889Z

© Jutge.org, 2006–2026.
https://jutge.org