Funció de Siracusa P52109


Statement
 

pdf   zip

Considereu el procés següent sobre qualsevol nombre natural n1n \ge 1:

  • Si nn és parell, el dividim per dos.

  • Si nn és senar, el tripliquem i li sumem un.

La conjectura de Collatz, que té prop d’un segle, diu que començant en qualsevol natural aquest procés sempre arriba a 1.

Una funció estretament relacionada amb la conjectura de Collatz és la de Siracusa: Donat un nn senar, li apliquem el procés de Collatz fins arribar de nou a un nombre senar. Per exemple, si n=9n = 9, passem a n=3n+1=28n ' = 3n + 1 = 28, d’aquí a n=n/2=14n'' = n'/2 = 14, i d’aquí a n=n/2=7n''' = n''/2 = 7. Per tant, la funció de Siracusa aplicada a 9 dóna 7.

Donat un natural senar nn, li podeu aplicar la funció de Siracusa?

Entrada

L’entrada consisteix en diversos naturals senars entre 1 i 106+110^6 + 1.

Sortida

Per a cada nn, escriviu el resultat d’aplicar-li la funció de Siracusa.

Public test cases
  • Input

    1
    3
    5
    7
    9
    999999
    1000001
    

    Output

    1
    5
    1
    11
    7
    1499999
    750001
    
  • Information
    Author
    Víctor Martín
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++ Haskell Python