求1~n的全排列構成的建築裡裡,有多少個排列,從左邊看能看到a個,右邊看能看到b個
一看資料範圍(n≤
50000
,資料組數t≤
200000
),覺得找規律
於是乎:
/*暴力找規律*/
#include
#include
#include
#include
const int mod=1000000007;
int vis[100010],ans,n,a,b,t[100010];
void dfs(int
pos=0,int fa=0,int dep=0)
for(int i=1;i<=n;i++)
if(!vis[i])dfs(i,pos,dep+1);
vis[pos]=0;
}int test;
int main()
當我發現每一斜線的比值都是楊輝三角形裡的,但是放大多少倍我算不出來=-=,於是以自己並不好的數學開始推公式:
不會推,看來我的數學理論基礎還是不夠的,打算補補《具體數學》來看。
檢視題解原來有個東西叫第一類斯特林數,所以這題等以後會的時候再來填坑吧》_<
t_t
發現自己好弱,沒關係,趁著年輕,才初三,加油幹
洛谷P4609 FJOI2016 建築師
小 z 是乙個很有名的建築師,有一天他接到了乙個很奇怪的任務 在數軸上建 n 個建築,每個建築的高度是 1 到 n 之間的乙個整數。小 z 有很嚴重的強迫症,他不喜歡有兩個建築的高度相同。另外小 z 覺得如果從最左邊 所有建築都在右邊 看能看到 a 個建築,從最右邊 所有建築都在左邊 看能看到 b ...
FJOI2016 建築師 斯特林數
問題描述 小 z 是乙個很有名的建築師,有一天他接到了乙個很奇怪的任務 在數軸上建 n 個建築,每個建築的高度是 1 到 n 之間的乙個整數。小 z 有很嚴重的強迫症,他不喜歡有兩個建築的高度相同。另外小 z 覺得如果從最左邊 所有建築都在右邊 看能看到 a個建築,從最右邊 所有建築都在左邊 看能看...
洛谷 P4609 FJOI2016 建築師
本省省選題是需要做的。題目傳送門 洛谷p4609。題意簡述 求有多少個 1 到 n 的排列,滿足比之前的所有數都大的數正好有 a 個,比之後的所有數都大的數正好有 b 個。答案對 mod 10 9 7 取模。有 t 組資料。題解 考慮最大的元素 n 它把序列分成兩部分。考慮左邊的一部分,它滿足比之前...