藍橋杯 未名湖邊的煩惱 C++藍橋杯 HERODING的藍橋杯之路

資源限制
時間限制:1.0s 內存限制:256.0MB
問題描述
  每年冬天,北大未名湖上都是滑冰的好地方。北大體育組準備了許多冰鞋,可是人太多了,每天下午收工後,常常一雙冰鞋都不剩。
  每天早上,租鞋窗口都會排起長龍,假設有還鞋的m個,有需要租鞋的n個。現在的問題是,這些人有多少種排法,可以避免出現體育組沒有冰鞋可租的尷尬場面。(兩個同樣需求的人(比如都是租鞋或都是還鞋)交換位置是同一種排法)
輸入格式
  兩個整數,表示m和n
輸出格式
  一個整數,表示隊伍的排法的方案數。
樣例輸入
3 2
樣例輸出
5
數據規模和約定
  m,n∈[0,18]
  問題分析

解題思路:
該題提示用遞歸方式進行隊伍排序方案,本質上筆者理解爲排序方案的枚舉,把所有方案列出來,剔除不符合條件的方案,相加即爲最終結果。方法多樣,可以是遞歸也可以是dp動態規劃,只要能枚舉出來都可以。代碼如下:

#include<bits/stdc++.h>

using namespace std;

int res(int m, int n){
	if(m < n){
		return 0;	//無鞋可借 
	}
	if(n == 0){
		return 1;//都有鞋穿了 
	} 
	return  res(m - 1, n) + res(m, n - 1);
} 

int main() {
	int m, n;
	cin >> m >> n;
	int r = res(m, n);
	cout << r;
	return 0;
}

該筆者方法多樣,值得借鑑 https://blog.csdn.net/qq_39825375/article/details/84949835

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