Muenzen
muenzen.c — C source code, 1 KB
Dateiinhalt
#include <stdio.h> int w,manz,muenz[20],cache[10000]; int muenzsolv(int v) { int min,help,i; if (v==0) { return 0; } if (v<0) return 10000; min=10000; if (cache[v]<10000) return cache[v]; for (i=0;i<manz;i++) { help=muenzsolv(v-muenz[i]); if (help<min) { min=help; } } cache[v]=min+1; return min+1; } int main(void) { int i; for(i=0;i<10000;i++){cache[i]=10000;} printf("Anzahl:"); scanf("%i",&manz); for (i=0;i<manz;i++) scanf("%i",&muenz[i]); do { printf("Wert 0=Ende"); scanf("%i",&w); printf("%i\n",muenzsolv(w)); } while (w!=0); return(0); }