• Aucun résultat trouvé

16| 17| def monnaie_bis(i, somme): 18| if i

N/A
N/A
Protected

Academic year: 2022

Partager "16| 17| def monnaie_bis(i, somme): 18| if i"

Copied!
1
0
0

Texte intégral

(1)

# interro_12_2020_monnaie_de_3_euros.py

01| # Nombre de manières de réaliser une somme donnée 02| # avec les pièces usuelles

03|

04| L = [1,2,5,10,20,50,100,200]

05| somme = 500 06| somme_max = 500 07|

08| # Les deux premiers calculent récursivement le nombre 09| # de solutions avec les pièces de L[: i+1]

10|

11| def monnaie(i, somme):

12| if i == 0:

13| return 1 14| else:

15| return sum(monnaie(i-1, somme - nb*L[i]) for nb in range(1 + somme //

L[i])) 16|

17| def monnaie_bis(i, somme):

18| if i == 0 or somme == 0:

19| return 1 20| if somme >= L[i]:

21| return monnaie_bis(i-1, somme) + monnaie_bis(i, somme - L[i]) 22| else:

23| return monnaie_bis(i-1, somme) 24|

25|

26| # Bien plus rapide :

27| monnaie_dynamique = [[0 for s in range(1 + somme_max)] for k in range(len(L))]

28|

29| for s in range(1 + somme_max):

30| monnaie_dynamique[0][s] = 1 31| for k in range(1, len(L)):

32| for s in range(L[k]):

33| monnaie_dynamique[k][s] = monnaie_dynamique[k - 1][s]

34| for s in range(L[k], 1 + somme_max):

35| monnaie_dynamique[k][s] = monnaie_dynamique[k - 1][s] + monnaie_dynamique[k][s - L[k]]

36|

37| # Calcule le résultat avec les k premières pièces connaissant 38| # le résultat avec les k-1 premières pièces.

39|

40| print('résultat : ', monnaie(len(L)-1, somme))

41| print('résultat_bis : ', monnaie_bis(len(L)-1, somme))

42| print('monnaie_dynamique : ', monnaie_dynamique[len(L) - 1][somme]) 43|

44| # s = 100 : 4563, s = 300 : 471363, s = 500 : 6295434 45|

1

Références

Documents relatifs

In this section we give some elementary inequalities for affine maps in Ro and consider the approximation of QS maps by similarities.. We first introduce

is an open hyperbolic triangular region qrith a vertex angle at least a at the vertex zn, and the hyperbolic distance from zn to the opposite side of the

The results show that some well-known undecidability results for context-free grammars hold true even if some specific additional information is available.. We

[r]

Bien entendu, il existe un th´ eor` eme analogue obtenu en ´ echangeant les rˆ oles de x et y dans l’´ enonc´ e pr´ ec´ edent.. On a donc toujours dans ce cas la propri´ et´

il désignait par là Pompce qui, ayant attiré sur sa patrie ce déluge de maux, était plus propre que tout autre à trouver les moyens convenables pour s' en dé- livrer. Lorsque

Sur le premier plan, on voit une des pirogues d’écorce d’arbre, dont se servent les sauvages du port Jackson; sur le second, on peut juger, par les hommes qui sont dans une pirogue ,

Dans le menu de configuration basique, premier paramètre du menu, sélec tionner le mode Spécial et saisir le temps d'impulsion et le temps de pause souhaité. Dans le menu