codevs 1994 排隊 排列組合 高精度

2022-05-15 23:24:55 字數 907 閱讀 9852

/*

數學題0.0

最後答案:a(n,n)*a(n+1,2)*a(n+3,m)+a(n,n)*c(m,1)*a(2,2)*c(n+1,1)*a(n+2,m-1);

簡單解釋一下

+之前的很顯然 先排男生 然後老師插空 然後女生插空 顯然符合條件

但仔細一想會發現少算了一部分 就是 老師 女生 老師 的情況

在單獨考慮著一種 先選夾在中間的女生(c(m,1)) 然後老師換位置 a(2,2)

然後安排這個(c(n+1,1)) 然後剩下的女生插空

注意不能把 老師 女生 老師 和其他女生看成一樣的 因為這個具有特殊性

然後就是高精了 最簡單的 連壓位都不用

*/#include

#include

#include

#define ll long long

using

namespace

std;

int n,m,a[1000010],b[1000010],c[1000010],ans[10000010

],l1,l2,l;

void

get_na()

while(a[l1+1

])

}}void

get_nb()

void mul1(int

x)

while(a[l1+1

])

}void mul2(int

x)

while(b[l2+1

])

}void

add()

while(c[l+1])l++;

}int

main()

安科 OJ 1054 排隊買票 (遞迴,排列組合)

時間限制 1 s 空間限制 128 m 有m個小孩到公園玩,門票是1元。其中n個小孩帶的錢為1元,k個小孩帶的錢為2元。售票員沒有零錢,問這些小孩共有多少種排隊方法,使得售票員總能找得開零錢。注意 兩個拿一元零錢的小孩,他們的位置互換,也算是一種新的排法。m 10 輸入一行,m,n,k 其中m n ...

8 排列組合

1 2 permutations 3 排列組合 4 輸入abc,輸出所有可能的排列結果 5 輸入 abc 6 輸出 abc 7 acb 8 bac 9 bca 10 cab 11 cba 12 1314 include15 16using namespace std 1718 int c1 0 19...

codevs 2956 排隊問題

題目描述 description 有n個學生去食堂,可教官規定 必須2人或3人組成一組,求有多少種不同分組的方法。輸入描述 input description 乙個數,n 輸出描述 output description 乙個數,即答案。樣例輸入 sample input 6樣例輸出 sample o...