藍橋杯 標題:硬幣方案

有50枚硬幣,可能包括4種類型:1元,5角,1角,5分。
已知總價值爲20元。求各種硬幣的數量。
比如:2,34,6,8 就是一種答案。
而 2,33,15,0 是另一個可能的答案,顯然答案不唯一。
你的任務是確定類似這樣的不同的方案一共有多少個(包括已經給出的2個)?

直接提交該數字,不要提交多餘的內容。

分析:要把分和角換成整數,所以全部數據擴大100倍。

C++代碼:

#include<iostream>
using namespace std;
int a[4]={0};
int x=2000;
int main()
{
	int sum=0;
	for(a[0]=0;a[0]<20;a[0]++) 
		for(a[1]=0;a[1]<40;a[1]++)
			for(a[2]=0;a[2]<50;a[2]++)
				for(a[3]=0;a[3]<50;a[3]++)
				{
					if(a[0]+a[1]+a[2]+a[3]==50&&a[0]*100+a[1]*50+a[2]*10+a[3]*5==x)
						sum++;
				} 
	cout<<sum<<endl;
	return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章