题意
定义序列中的一个数为前缀最大值仅当其前面没有比他大的数,后缀最大值同理。问有多少个长度为n的排列满足前缀最大值数量恰好为a,后缀最大值数量恰好为b。
n,a,b≤105n,a,b≤105
分析
首先分析一下性质,排列中的最大值,也就是n必然是一个前缀最大值和后缀最大值,且前缀最大值一定在n的前面,后缀最大值一定在n的后面。
设s(i,j)s(i,j)表示有多少个大小为ii的排列满足前缀最大值数量恰好为
。枚举最小的数放哪里,不难得到
s(i,j)=s(i−1,j−1)+(i−1)s(i−1,j)s(i,j)=s(i−1,j−1)+(i−1)s(i−1,j)
根据递推式不难发现