26 lines
700 B
C++
26 lines
700 B
C++
#include "cpp_headers/fcpp.hh"
|
|
|
|
// Helper Funktion fuer Fakultaet
|
|
// berechnet Fakultaet linear iterativ
|
|
int fakIter(int produkt, int zaehler, int ende) {
|
|
return cond(zaehler>ende,
|
|
produkt,
|
|
fakIter(produkt*zaehler,zaehler+1,ende));
|
|
}
|
|
|
|
// Berechnet die Fakulaet einer Zahl
|
|
int fakultaet(int n) {
|
|
return fakIter(1,1,n);
|
|
}
|
|
|
|
// Berechnet den Binomial Koeffizienten (n ueber k) durch seine explizite
|
|
// Darstellung
|
|
int binomial_fast(int n, int k) {
|
|
return fakultaet(n)/(fakultaet(k) * fakultaet(n-k));
|
|
}
|
|
|
|
int main(int argc, char **argv) {
|
|
return print(binomial_fast(readarg_int(argc, argv, 1),
|
|
readarg_int(argc, argv, 2)));
|
|
}
|