Z Courses

A Simple Web Classroom

用户工具

站点工具


趣题:cpp:零钱问题

这是本文档旧的修订版!


# 零钱问题

## 题目描述

在现实生活中,经常遇到找零问题,假设有数目不限的面值为20,10,5,1的硬币。给出需要找零数,求出找零方案,要求:使用数目最少的硬币。

## 参考代码

<hidden> ```cpp #include <iostream> using namespace std; void change(int m[],int n,int k) {

for(int i=0;i<k;i++)
{
	while(n>=m[i] && n>0)
	{
		cout << m[i] <<" ";
		n-=m[i];
	}
}

}

int main(int argc, char **argv) {

int money[]={20,10,5,1};
int n;
cin >> n;
change(money,n,sizeof(money)/sizeof(money[0]));
return 0;

} ``` </hidden>