1月21日訓練賽

2021-09-10 02:44:10 字數 816 閱讀 1967

把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分法?(用k表示)5,1,1和1,5,1 是同一種分法。

input

第一行是測試資料的數目t(0 <= t <= 20)。以下每行均包含二個整數m和n,以空格分開。1<=m,n<=10。

output

對輸入的每組資料m和n,用一行輸出相應的k。

sample input

17 3

sample output

8分析:

遞迴f(m,n)表示m個蘋果放到n個盤子中的方法數

當n>m時,必然有盤子是空的,因為最多也就用到m個盤子,因此f(m,n)=f(m,m);

當n<=m時,有兩種情況:

有盤子為空時:

f(m,n)=f(m,n-1)因為至少有乙個為空,那去掉乙個完全不影響已有的方法數。

當盤子不空的時候,全部n個盤子都有裝蘋果,那所有的都可以拿掉乙個蘋果,也就是 f(m,n)=f(m-n,n) 方法數是一樣的,只不過所有盤子都用上的時候每個盤子裝的數量可能不一樣

而n<=m的時候就是有空和沒空兩種情況的和

f(n,m)=f(m,n-1)+f(m-n,n)

兩者遞迴時,n和m都會逐漸減小 ,出口為n1或m0的時候,都只有一種方法

#include

#include

#include

#include

#include

using namespace std;

int f(int m, int n)

}int main()

return 0;

}

訓練賽 2023年1月16日訓練賽總結

訓練賽位址 rank 3 總結一下訓練賽的情況,53分鐘出6道水題以後暫列第一,手速其實還可以,狀態也不錯,不過之後可能就浮躁了,然後看題目也看不全,寫 也是缺三漏四。c題錯在沒有初始化陣列。wa1。d題沒有看資料範圍一看題就以為是最長上公升子串行,然後t了,然後重新看題目,才發現是每次上公升1的子...

2023年1月23日山師訓練賽2

題目鏈結 題意 有 n 個人,每個人會且僅會一種語言.有 m 個電影,電影語言分為 音訊語言 和 字幕語言,且同場電影的音訊語言和字幕語言不同.當人 電影時,如果他會該電影的音訊語言,他會非常高興.當人 電影時,如果他會該電影的字幕語言,他會比較高興.現要求選擇一場電影,使得非常高興的人數最多,若解...

11 28日訓練賽總結

2.在 0,0 n,m 中有 k 個點,問從 x 0 移動到 x n 的過程中,與這些點以及 y 0 和 y m 的最小距離的最大值為多少?簡單題。將 距離小於等於 2d 的 元素 連起來,若上下邊界聯通則不合法。考慮最小生成樹的過程,做一遍 n2 的 prim 就可以了。考試時智障,沒想到平方 p...