题解:
首先举一下例子
100个1
50个2
20个5均可以
其实从数学的角度来表达即是 m*1 + n*2 + k*5 =100
求这个方程的解 非负整数的解
也即是 n*2 + k*5 = 100-m
即 0 <= n*2 + k*5 <=100 这个不等式所有满足的n k
下面列出源代码
#include <stdio.h>
int main(int argc , char *argv[])
{
int nCount = 0 , i , j;
for(i = 0; i <= 20; ++i)
{
for(j = 0 ; j <= 50; ++j)
{
if(5 * i + 2 * j <= 100 && 5 * i + 2 * j >= 0)
{
++nCount;
}
}
}
printf("count : %d\n" , nCount);
return 0;
}