Cabala Subtask 4

Io ho fatto così: ho creato una funzione
void recursion(char last_d, int curr, char len)
dove last_d è la cifra più significativa del numero, curr è il numero, len è la lunghezza del numero (in decimale).
All’inizio del programma chiamo recursion(0, 0, 0), ossia il caso in cui il numero è 0 (non conta in teoria, ma alla fine non cambia niente).
Ogni volta che viene chiamata la funzione calcola il modulo e si segna in una variabile globale il modulo massimo che trova, poi si chiama di nuovo due volte aggiungendo al numero con cui è stata chiamata un’altra cifra, è così via finchè non si raggiunge la lunghezza massima.
Ad esempio nel caso N=2 M=68 (secondo esempio di input/output nel testo):
recursion(0, 0, 0) calcola il modulo 0%68 e chiama:
— recursion(3, 3, 1) che calcola il modulo 3%68 e chiama:
— — recursion(6, 63, 2) che calcola il modulo 63%68 e si ferma
— — recursion(9, 93, 2) che calcola il modulo 93%68 e si ferma
— — recursion(3, 33 2) non viene chiamata perché avrebbe due cifre adiacenti uguali
— recursion(6, 6, 1) che calcola il modulo 6%68 e chiama …
— recursion(9, 9, 1) che calcola il modulo 9%68 e chiama …

Se serve mando il codice