程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> HDU2566 統計硬幣

HDU2566 統計硬幣

編輯:C++入門知識

HDU2566 統計硬幣


統計硬幣

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 3837 Accepted Submission(s): 2687

Problem Description 假設一堆由1分、2分、5分組成的n個硬幣總面值為m分,求一共有多少種可能的組合方式(某種面值的硬幣可以數量可以為0)。
Input 輸入數據第一行有一個正整數T,表示有T組測試數據;
接下來的T行,每行有兩個數n,m,n和m的含義同上。

Output 對於每組測試數據,請輸出可能的組合方式數;
每組輸出占一行。

Sample Input
2
3 5
4 8

Sample Output
1
2
設1分的為x個,2分的為y個,則x+2y+5(n-x-y)==m, 得5n-m==4x+3y;

#include 

int main()
{
	int n, m, x, y, cnt, t, tmp, i;
	scanf("%d", &t);
	while(t--){
		scanf("%d%d", &n, &m);
		tmp = 5 * n - m;
		for(i = cnt = 0; i <= n; ++i)
			for(int j = 0; j <= n; ++j)
				if(4*i+3*j==tmp && i+j<=n)
					++cnt;
		printf("%d\n", cnt);
	}
	return 0;
}


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved