求助,1元怎么分解为1角5角2角5分2分1分的组合
我用遍历所有值实现了,求个效率高的算法,求给个思路,谢谢以下是我用得方法,不知道怎么改进
int main( )
{
int a,b,c,d,e,f,g,n=0;
for(g=0;g<=1;g++)
for(a=0;a<=2;a++)
for(b=0;b<=5;b++)
for(c=0;c<=10;c++)
for(d=0;d<=20;d++)
for(e=0;e<=50;e++)
for(f=0;f<=100;f++)
if(a*50+b*20+c*10+d*5+e*2+f+g*100==100)
n++;
cout<<"一共有"<<n<<"种组合方式";
return 0;
}
[ 本帖最后由 大大猫 于 2011-10-29 17:19 编辑 ]