Due domande sul problema "la congettura di Bicollatz"


#1
  1. Non riesco a ottimizzare il mio codice (50/100):https://pastebin.com/JNPqmir8

  2. Sbaglio o la congettura è sbagliata? Se pongo a=1 e b=2 non si arriverà mai a a=1 e b=1


#2

La risposta ad entrambe le domande è la stessa :smile:
Dal testo:
• La funzione dovrà restituire il numero di passaggi prima di ottenere (1, 1), oppure −1 se la
congettura è falsa per A,B, e questo valore verrà stampato sul file di output.

Quindi i casi in cui vai in TLE sono proprio quelli che non finiscono mai.

Fabio.


#3

Scusa ma cosa intendi con tle? E come capisco che la congettura è falsa o semplicemente deve ancora arrivare alla fine?


#4

Per TLE = time limit exceeded, quindi significa che la tua soluzione supera il tempo massimo d’esecuzione per l’esercizio in questione.

Per capire se non finirai mai puoi:

  • Trovare un upper buond alla soluzione, quindi dimostrare che la soluzione non può superare un certo intero x.
  • Se torni ad una coppia già analizzata allora non finirà mai il procedimento, perché continuerai a tornarci.