J'ai aussi testé quelque chose en python en dynamique:
Ca a l'air de marcher .Code:# -*- coding: cp1252 -*- def fact(n): """fact(n): calcule la factorielle de n (entier >= 0)""" x=1 for i in xrange(2,n+1): x*=i return x def combin(n, k): """Nombre de combinaisons de n objets pris k a k""" if k > n//2: k = n-k x = 1 y = 1 i = n-k+1 while i <= n: x = (x*i)//y y += 1 i += 1 return x k=53 n=489 stirling = [[0 for j in range(k+1)] for i in range(n+1)] def generate_stirling(): stirling[0][0] = 1 for i in range(1, n+1): for j in range(1, k+1): stirling[i][j]=j*stirling[i-1][j] + (i-1)* stirling[i-2][j-1] def main(): generate_stirling() if __name__ == "__main__": main() s=fact(k)*stirling[n][k] ## Vérification test=stirling[2*k][k]-fact(2*k)/(fact(k)*2**k) if test==0: print 'On est ok !'
PS: les fonctions ne sont pas de moi, mais prises sur le site "les recettes Python de Tyrtamos"
-----