换硬币

| October 19, 2007 13:48 | timmy | Via Original
输入一个正整数repeat (0将一笔零钱(大于8分,小于1元, 精确到分) 换成1分、2分和5分的硬币。输入金额,问有几种换法?要求每种硬币至少有一枚。
例:括号内是说明
输入:
2    (repeat=2)
10   (money=10分)
13   (money=13分)
输出:
2    (10分有2种换法)
4    (13分有4种换法)


#include "stdio.h"
int main( )
{
 int ri, repeat;
 int count, fen1, fen2, fen5, money;

 scanf("%d", &repeat);
 for(ri = 1; ri <= repeat; ri++){
   scanf("%d", &money);
  count=0;
  for(fen5=1;fen5<=19;fen5++)
    for(fen2=1;fen2<=48;fen2++)
      for(fen1=1;fen1<=money;fen1++)
        if(fen5*5+fen2*2+fen1==money)
          count++;
   printf("%d\n", count);
 }
}
Tags:
Program/Code » C/C++ | Comments(0) | Trackbacks(0) | Reads(230)
Add a comment
 Site URI
 Email
  Password Optional
 Nickname  *  [Register]
               

 
Emots
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
Enable HTML
Enable UBB
Enable Emots
Hidden
Remember