#include #define MAXP 11000 #define INF 100000 #define C 4 #define I(x) ((x)+24) int pric[MAXP][C]; int pr, c1, c5, c10, c25; void init() { for(int i=0; i<24; i++) pric[i][0] = pric[i][1] = pric[i][2] = pric[i][3] = INF; pric[24][0] = pric[24][1] = pric[24][2] = pric[24][3] = 0; } void put(int dst, int src) { for(int i=0; i<4; i++) pric[dst][i] = pric[src][i]; } int main() { for(;;) { scanf("%d%d%d%d%d",&pr,&c1,&c5,&c10,&c25); if(!pr && !c1 && !c5 && !c10 && !c25) break; init(); for(int i=I(1); i<=I(pr); i++) { if (pric[i-1][0]+1 <= c1) { put(i,i-1); pric[i][0]++; } else if (pric[i-5][1]+1 <= c5) { put(i,i-5); pric[i][1]++; } else if (pric[i-10][2]+1 <= c10) { put(i,i-10); pric[i][2]++; } else if (pric[i-25][3]+1 <= c25) { put(i,i-25); pric[i][3]++; } else { pric[i][0] = pric[i][1] = pric[i][2] = pric[i][3] = INF; } } if (pric[I(pr)][0] == INF) printf("Charlie cannot buy coffee.\n"); else { printf("Throw in %d cents, %d nickels, %d dimes, and %d quarters.\n", pric[I(pr)][0], pric[I(pr)][1], pric[I(pr)][2], pric[I(pr)][3]); } } return 0; }