【C语言训练】邮票组合问题
2017-05-14 23:23
330 查看
题目描述
某人有四张3分的邮票和三张5分的邮票,用这些邮票中的一张或若干张可以得到多少种不同的邮资?输入
输出
可得到多少种样例输入
样例输出
提示
将问题进行数学分析,不同张数和面值的邮票组成的邮资可用下列公式计算:S=3*i+5*j
其中i为3分邮票的张数,j为5分的张数
按题目的要求,3分的邮票可以取0、1、2、3、4张,5分的邮票可以取0、1、2、3张。采用穷举方法进行组合,可以求出这些不同面值不同张数的邮票组合后的邮资。
【代码】
#include <stdio.h> #define N 25 main() { int a ,count=0,k; int i,j,sum; for(i=0;i<=4;i++) for(j=0;j<=3;j++) { sum=3*i+5*j; for(k=0;k<count;k++) if(sum==a[k]) break; if(sum&&k==count) //这里要注意下,题目说了至少要一张 a[count++]=sum; } printf("%d\n",count); }
相关文章推荐
- 【C语言训练】邮票组合问题
- 1154: 【C语言训练】邮票组合问题*__简单题
- 一道C语言面试题——邮票组合问题
- 用C语言如何编程实现从三个数组中各抽取几个数进行组合的问题?
- 04-05组合问题_算法训练
- 1045: 邮票组合问题*
- 【C语言训练】"水仙花数"问题1
- 问题 G: 【C语言训练】排序问题<1>
- C语言 杭电ACM 1276 士兵队列训练问题
- 【C语言训练】排序问题<2>
- 【C语言训练】自守数问题
- 【C语言训练】大、小写问题
- C语言实现的排列组合问题的通用算法、解决方法
- 字符串的组合算法问题的C语言实现攻略
- Algorithm --> 邮票连续组合问题
- 【C语言训练】自由落体问题
- c语言实现排列组合算法问题
- c语言实现排列组合算法问题
- c语言训练题:关于张三李四王五说谎的问题(此处用javascript实现)
- 1045:邮票组合问题