This commit is contained in:
2026-10-21 11:35:22 +02:00
parent a3b9b4b67e
commit 675605e80f
+14 -5
View File
@@ -171,12 +171,21 @@ static const int PIECES[] = {1, 2, 5, 10, 20, 50, 100, 200};
long nb_facons_rendre(int somme, int nb_pieces) long nb_facons_rendre(int somme, int nb_pieces)
{ {
if (somme == 0) if (somme < 0)
return 1;
if (somme < 0 || nb_pieces == 0)
return 0; return 0;
return nb_facons_rendre(somme - PIECES[nb_pieces - 1], nb_pieces) + if (nb_pieces == 0)
nb_facons_rendre(somme, nb_pieces - 1); return somme == 0;
long dp[somme + 1];
for (int s = 0; s <= somme; s++)
dp[s] = 1; /* pièce de 1 : une seule façon */
for (int p = 1; p < nb_pieces; p++) {
int c = PIECES[p];
for (int s = c; s <= somme; s++)
dp[s] += dp[s - c];
}
return dp[somme];
} }
static int categorie_debit(const Transaction *t) static int categorie_debit(const Transaction *t)