#include#include using namespace std; int currency[]={1,2,4,10,20,40,100,200,400,1000,2000}; long long num[6001]; int main() { memset(num,0,sizeof(num)); num[0]=1; for(int i=0;i<11;i++) for(int j=currency[i];j<=6000;j++) num[j]+=num[j-currency[i]];//类似于某种递归 ,状态转移方程 double a; while(~scanf("%lf",&a)&&a) { int aa=(int)(a*100+0.5); printf("%6.2lf%17lldn",a,num[aa/5]); } return 0; }



