1 pièce(s) jointe(s)
Fonction récursive à deux arguments
Bonjour
J'ai une fonction récursive toute simple
f(x,y) = f(x-1,y) + f(x, y-1)
f(x, 0) = f(0, y) = 1
Je pense que cette fonction doit être connue et porter un nom mais je l'ignore.
J'aurais voulu connaître son nom, et aussi une méthode rapide de calcul, par exemple une méthode pour la dérécursiver car je n'en ai pas trouvé :(.
Tout ce que j'ai trouvé est
Pièce jointe 567661
ce qui ne me mène pas très loin par rapport à la première définition !
J'obtiens en C
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| #define MAX 10000
unsigned long long int val[MAX][MAX];
unsigned long long int f(int x, int y)
{
if (val[x][y] == 0)
{
unsigned long long int tt = 0;
for (int i = 0; i <= x; i++)
{
if (y == 0)
tt = 1;
else
tt += f(i, y - 1)) ;
}
val[x][y] = tt;
}
return val[x][y];
} |
La mémoïsation c'est bien gentil mais quand on a de très grandes valeurs on arrive vite aux limites des systèmes.
Merci pour vos conseils et indications !