暴力解法,同百钱买白鸡
#include <stdio.h>
int main() {
int n, i, j, k, l, m, ans;
while(scanf("%d", &n) != EOF) {
if(n==0) {
printf("1\n");
continue;
}
ans = 0;
for(i=0; i<=n; i++)
for(j=0; j*5<=n-i; j++)
for(k=0; k*10<=n-i-j*5; k++)
for(l=0; l*25<=n-i-j*5-k*10; l++) {
m = n-i-j*5-k*10-l*25;
if(i+j+k+l+m/50<=100 && m%50==0)
ans ++;
}
printf("%d\n", ans);
}
return 0;
}
本文介绍了一种通过暴力枚举的方式解决特定数学问题的方法。该算法使用多重循环来遍历所有可能的情况,并检查每种情况是否满足题目要求,以此来计算符合条件的组合总数。
923

被折叠的 条评论
为什么被折叠?



