hdu2068PRG錯排(結合組合數)

2021-09-10 09:03:29 字數 879 閱讀 5347

今年暑假杭電acm集訓隊第一次組成女生隊,其中有一隊叫rpg,但做為集訓隊成員之一的野駱駝竟然不知道rpg三個人具體是誰誰。rpg給他機會讓他猜猜,第一次猜:r是公主,p是草兒,g是月野兔;第二次猜:r是草兒,p是月野兔,g是公主;第三次猜:r是草兒,p是公主,g是月野兔;…可憐的野駱駝第六次終於把rpg分清楚了。由於rpg的帶動,做acm的女生越來越多,我們的野駱駝想都知道她們,可現在有n多人,他要猜的次數可就多了,為了不為難野駱駝,女生們只要求他答對一半或以上就算過關,請問有多少組答案能使他順利過關。

input

輸入的資料裡有多個case,每個case包括乙個n,代表有幾個女生,(n<=25), n = 0輸入結束。

output11

sample input12

0sample output11

分析,將選對問題轉成選錯問題,即錯排問題,則變成最多不能選錯超過一半,可變成選錯1個,2個,。。。n/2,利用錯排和組合結合求出各個情況的方式數,加起來即為所求。

ac**

#include#include#include using namespace std;

long long p[40] = ;

long long a[40];

void asd()//錯排公式

}void ask(int n)//記錄組合數

}int main()

sum = 1;

if (n % 2)c =n- n / 2 -1;

else c = n-n / 2;

asd();

ask(n);

for (int i = 2; i <= c; i++)

cout << sum << endl;

}}

hdu 2068 錯排 組合

problem description 今年暑假杭電acm集訓隊第一次組成女生隊,其中有一隊叫rpg,但做為集訓隊成員之一的野駱駝竟然不知道rpg三個人具體是誰誰。rpg給他機會讓他猜猜,第一次猜 r是公主,p是草兒,g是月野兔 第二次猜 r是草兒,p是月野兔,g是公主 第三次猜 r是草兒,p是公主...

HDU 2068(錯排公式)

time limit1000 ms memory limit32768 kb oswindowssource rpg專場練習賽 題目 今年暑假杭電acm集訓隊第一次組成女生隊,其中有一隊叫rpg,但做為集訓隊成員之一的野駱駝竟然不知道rpg三個人具體是誰誰。rpg給他機會讓他猜猜,第一次猜 r是公主...

hdu2068 hdu 2049 錯排組合

這部分涉及的知識為組合數和錯排 參考 比較簡單 hdu2068 include include int64 c int n,int m 組合數公式 return u d main sum for i 3 i 13 i f i i 1 f i 1 f i 2 while scanf d n n 另一題...