[TiLUG] OT - Algoritmo calcolo coefficienti binomiali

Matteo Pasotti matteo.pasotti@gmail.com
Mar 26 Feb 2008 11:02:22 CET


ciao a tutti,
scusate il leggero ot, neanche tanto visto che la nostra ml è piena di
ottimi sviluppatori :)
Volevo sottoporvi il seguente problema.

Dati i coefficienti binomiali espressi in questa forma:

C(n;k)=n! / k! * (n-k)!

e considerando il caso in cui k vari tra 0 e 5 ed n tra k e 10
come riconduco ciò ad un algoritmo?
Io farei così, ma ho qualche dubbio sull'interpretazione del testo:

Σ(k,0,5, Σ(n,k,10,C(n;k)))

e quindi una roba del genere

for(int k=0;k<=5;k++){
    for(int n=k;n<10;n++){
       val+=factorial(n)/(factorial(k)*factorial(n-k));
    }
}

ove factorial non è nientaltro che una funzione che calcola il fattoriale :)

Come vi pare? Ci sono sistemi più efficienti per calcolare una roba
del genere? sempre ammesso che sia giusta ;)
Grazie in anticipo
--
Matteo aka TM


Maggiori informazioni sulla lista TiLUG