【題目】
【題意】中文題目!
【解題方法】dp[i],i個人的組隊方案數。dp=1,dp【i】=sigma(c(i-1,j)*dp[i-1-j])。這個方程怎麼來的呢?考慮一下第i個人,在他前面有j個人,他可以選擇的方案數為c(i-1,j),剩餘的i-1-j的方案數為dp[i-1-j]。根據乘法原理得到每個j的貢獻是c(i-1,j)*dp[i-1-j]。然後列舉一下j,就可以了。
【ac **】
#include #include #include #include using namespace std;
const int maxn = 1005;
typedef long long ll;
const ll mod = 998244353;
ll c[maxn][maxn],dp[maxn];
void init(){
for(int i=0; i<=1000; i++){
c[i][0]=c[i][i]=1;
for(int j=1; j
0002組隊參賽規則
quote 乙個參賽隊伍不能超過三人,可以擁有乙個替補。包括替補在內任何參賽隊員必須為高中畢業五年內,才可以參賽,也就是說研究生一年級的學生還可以參加。現在的問題是給你乙個隊伍,請判斷這個隊伍是否合法。輸入資料 輸入資料報括若干組,每一組包括有若干行,第一行為乙個整數n,為這個隊伍的人數,接著有n行...
20110805 組隊賽 f題
測試資料有多組,對於每組資料,第一行為乙個整數n 1 n 10000 表示表示式中數字的個數,其後的第i 1行每行有乙個整數表示xi的值 1 i n 1 xi 1000000000 對於每組資料,如果你能幫阿里巴巴開啟石門,輸出yes,否則輸出no。58421143579 yesno 這是劉汝佳黑書...
C 100449 組隊競賽
牛牛舉辦了一次程式設計比賽,參加比賽的有3 n個選手,每個選手都有乙個水平值a i。現在要將這些選手進行組隊,一共組成n個隊伍,即每個隊伍3人.牛牛發現隊伍的水平值等於該隊伍隊員中第二高水平值。例如 乙個隊伍三個隊員的水平值分別是3,3,3.那麼隊伍的水平值是3 乙個隊伍三個隊員的水平值分別是3,2...