OJ1914(改进,通过OJ检测)

来源:互联网 发布:在香港用淘宝 编辑:程序博客网 时间:2024/05/17 01:17
#include <stdio.h>#include <string.h>int main(){    int a,b,c,d,e,f,g,number,res;    scanf("%d",&number);    while(number){            res = 0;    for(a=0;a<=number/100;a++)        for(b=0;b<=number/50;b++)            for(c=0;c<=number/20;c++)                for(d=0;d<=number/10;d++)                    for(e=0;e<=number/5;e++)                        for(f=0;f<=number/2;f++)                        {                            if((a+b+c+d+e+f)>100)                                break;                            if((a+b+c+d+e+f)+number-(a*100+b*50+c*20+d*10+e*5+f*2)>100)                                continue;                                if(number-(a*100+b*50+c*20+d*10+e*5+f*2)>=0)                                    res++;                        }    printf("%d\n",res);    scanf("%d",&number);    }    return 0;}

Description

我们知道人民币有1、2、5、10、20、50、100这几种面值。 现在给你 n(1≤n≤250)元,让你计算换成用上面这些面额表示且总数不超过100张,共有几种。 比如4元,能用4张1元、2张1元和1张2元、2张 2元,三种表示方法。

Input

输入有多组,每组一行,为一个整合n。 输入以0结束。

Output

输出该面额有几种表示方法。

Sample Input

140

Sample Output

13
0 0
原创粉丝点击