给你一个钱的数目,求出用这些币种能表达出的所有不同形式
2013-03-25 00:00
183 查看
人民币有1、2、5、10、20、50、100的币种,给你一个钱的数目,求出用这些币种能表达出的所有不同形式(例如5=5*1=2*2+1=2*1+1*3=1*5)
思路:应该算是回溯吧
思路:应该算是回溯吧
/*=========================================================*\ 人民币有1、2、5、10、20、50、100的币种,给你一个钱的数目, 求出用这些币种能表达出的所有不同形式(例如5=5*1=2*2+1=2*1+1*3=1*5) \*=========================================================*/ #include <iostream> #include <iomanip> using namespace std; int a[7]={1,2,5,10,20,50,100}; int temp[7]={0,0,0,0,0,0,0}; int n,j,z; void change(int sum, int index) { int i; if (sum==n) { int k=0; for (j=0;j<7;j++) k+=temp[j]; if (k>100) return; z++; cout << setw(8) << z << ":"; for (j=0;j<7;j++) cout << temp[j]; cout << endl; return; } else if (sum>n) return; else for (i=index;i<7;i++) { temp[i]++; change(sum+a[i],i); temp[i]--; } } int main(){ n=5; z=0; change(0,0); system("pause"); return 1; }
相关文章推荐
- 给定一个字符数组,求由这些字符组成的所有不同的排序问题.
- 1.写一个函数返回参数二进制中 1 的个数;2..获取一个数二进制序列中所有的偶数位和奇数位;3. 输出一个整数的每一位;4.两个int整数的二进制表达中,有多少个位不同
- 面试题: 已知一个含有n个不同元素的集合,要求打印其所有具有k个元素的子集(不允许有重复的)
- linux命令行下如何以目录树的形式显示一个文件夹的所有文件
- 确定字符互异 确定一个字符串的所有字符是否全都不同。这里我们要求不允许使用额外的存储结构。 给定一个string iniString,请返回一个bool值,True代表所有字符全都不同,False代
- iOS应用崩溃日志分析低内存闪退 因为低内存崩溃日志与普通崩溃日志略有不同,所以本教程特别分开说明一下。 iOS设备检测到低内存时,虚拟内存系统发出通知请求应用释放内存。这些通知发送到所有正在运行
- 确定一个字符串的所有字符全都不同算法实现
- 给定一棵二叉树,每个结点包含一个值。打印出所有满足以下条件的路径: 路径上结点的值加起来等于给定的一个值。注意:这些路径不必从根结点开始。
- 给定一棵二叉树,每个结点包含一个值。打印出所有满足以下条件的路径: 路径上结点的值加起来等于给定的一个值。注意:这些路径不必从根结点开始。
- 对于一个数字,我们可以直观的了解到它所含有的数字,例如: 3243中包含1个2、2个3、1个4。 那么,给你一个数n,求从1到n之间的所有这些数字中,总共包含多少个m。
- 给定一个排序的链表,删除所有具有重复数字的节点,从原始列表中只留下不同的数字。
- Unity3d用户手册资源准备和导入分割动画 分割动画 通常,一个动画角色有许多不同动作,在游戏的不同情境中被激活。这些动作被称为动画片段 (Animation Clips)。例如,我们可能会针对走
- 整数的所有不同分割数目
- 编写一个函数,接受三个string参数,s,oldVal和newVal。使用迭代器及insert和erase函数将s中所有oldVal替换为newVal。测试你的程序,用他替换通用的简写形式,如,将“tho”,将“”“”
- 用1、2、3、3、4、5这六个数字,用java写一个程序,打印出所有不同的排列 要求:"4"不能在第三位,"3"与"5"不能相连。
- Java经典算法集——如下:用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列,如:512234、412345等,要求:"4"不能在第三位,"3"与"5"不能相连。
- 编程:用java 语言实现,输入一个数,就相应地输出的几维数组!||用1、2、2、3、4、5这六个数字,用java写一个函数,打印出所有不同的排列,要求:"4"不能在第三位,"3"与"5"不能相连
- 【扇形涂色问题】某里内推在线笔试,一个圆分成N个扇形,有M中颜色,求领域不同色的所有涂色方案数
- Python 网络爬虫 009 (编程) 通过正则表达式来获取一个网页中的所有的URL链接,并下载这些URL链接的源代码
- 递归实现以树的形式输入某一个文件夹下的所有文件及目录,不要求图形界面