錯位 組合 排列計數

2022-05-21 14:36:11 字數 749 閱讀 3547

題目描述

求有多少種長度為n的序列a,滿足以下條件:

1~n這n個數在序列中各出現了一次

若第i個數a[i]的值為i,則稱i是穩定的。序列恰好有m個數是穩定的滿足條件的序列可能很多,序列數對10^9+7取模。

輸入第一行乙個數 t,表示有 t 組資料。

接下來 t 行,每行兩個整數 n、m。

t=500000,n≤1000000,m≤1000000

輸出輸出t行,每行乙個數,表示求出的序列數

樣例輸入

5

1 01 1

5 2100 50

10000 5000

樣例輸出
0120

578028887

60695423

有m個位置的數要等於i,其他n-m個位置腰錯位,用f[i]=(i+1)*(f[i-1]*f[i-2])推一下,最後c(n,m)*f[n-m]就行了

#include #define ll long long

using

namespace

std;

const ll mod=1e9+7

;ll t,n,m;

ll f[

5000005],fac[5000005],inv[5000005];

void

init()

ll c(ll n,ll m)

intmain()

return0;

}

排列計數(dp)

主要題意就是給你乙個排列組合,要輸出指定ai i的個數輸出符合的排列組合與1000000007取模個數。input there are several test cases,and one line for each case,which contains two integers,n and k....

Perm排列計數

記憶體限制 512 mib 時間限制 1000 ms 標準輸入輸出 題目描述 稱乙個1,2,n的排列p1,p2.pn是magic的,當且僅當2 i n時,pi pi 2.計算1,2,n的排列中有多少是magic的,答案可能很大,只能輸出模p以後的值 輸入格式 輸入檔案的第一行包含兩個整數 n和p,含...

Perm 排列計數

題目描述 稱乙個1,2,n的排列p1,p2.pn是magic的,當且僅當2 i n時,pi pi 2.計算1,2,n的排列中有多少是magic的,答案可能很大,只能輸出模p以後的值 輸入格式 輸入檔案的第一行包含兩個整數 n和p,含義如上所述。輸出格式 輸出檔案中僅包含乙個整數,表示計算1,2的排列...