Salve a tutti ho scritto una funzione che calcola il numero di nepero ma é troppo lenta per i numeri molto grandi (c´é un programma online che controlla e in un caso mi da limite di tempo superato). Gli input sono K e N tali che K = N = 33, e se dovessero superare il 33 devo restituire -1 e se N<K devo restituire 0. Non posso usare nessun tipo di ciclo(for, while, goto) e nemmeno le [] parentesi graffe. Qualche idea su come rendere piu veloce il mio codice? Grazie
int control2(int N,int K )
{
if( K == 0 || K == N ) return 1;
if( N > 0 && K > 0 && N > K ) return control2( N - 1, K ) + control2( N - 1, K - 1 );
}
int control(int N, int K){
if(N<K)
return 0;
if(N>33 or K>33)
return -1;
return control2(N,K);
}
int newton(int N,int K){
return control(N,K);
}
siccome é un programma online a controllare ho dovuto scrivere la funzione newton in questo modo.