カウント
被験者説明
正の整数であり、所与のM; N-します。長さの現在数であろうN アレイの(A 。1 ; 2 ::: ;; nが)、以下の特性を満たします。
• それぞれについて1 ≤ Iが≤ N- あり、1 ≤ A I ≤のMを。
• すべて真の場合1 ≤ j個の≤のMがある奇数jが、満たされる:配列(A 1 ; :::; N- )におけるJの発生数は偶数。
答えは大きくなる可能性があるので、モード出力を答えてください10の9 + 7 の結果。
入力した
最初の行の整数Tを、発現したT 基クエリを。
次のt 行は、各行は正の整数によって分離された2つの空間を有するM; N-します。
出力
出力トンのラインが答えます。
サンプル入力
2
。3 1
。3 2
サンプル出力
04
サンプルを説明する
第二のサンプルは全てであってもよい(1 ; 1 ; 2); (1 ; 2 ; 1); (2 ; 1 ; 1); ( 2 ; 2 ; 2) 。
データサイズとは、合意された
合計10件のデータを。
最初のために。1つのデータ、N- ≤ 7。; M ≤ 7 。
最初のための3つのデータ、N- ≤ 1000年; M ≤ 10 。
最初のために図4に示すように、データ、N- ≤ 300 ; M ≤ 300 。
最初のために6つの。データ、N- ≤ 2000 ; M ≤ 2000 。
最初のために7つの。データ、N- ≤ 100000 ; M ≤ 100000。
すべてのデータのために、1 ≤ T ≤ 。5 、1 ≤ N- ≤ 10 9 、1 ≤ M ≤ 100000 。
分析:
1セットは、F [i]が[j]は、i番目、j番目の奇数が奇数回プログラムの総数で満たされる充填するために、前番号iを示し
2.意外A = CEIL(M / 2)の合計数の数を計算し、総数が偶数B = M / 2であります
3.状態遷移方程式を検討
いくつかのカテゴリに分ける:(1)I奇数偶数を充填する前に、(2)I奇数奇数、(3)偶数の前に充填されます
V = 1E9 + 7。
考えてみましょう+ 1は、これら3つの番号Iに配置されています。
(1)、充填されている[I] [K] *(アラスカ州)%MOD奇数即ちF [I + 1] [K + 1] + = Fの数を増加させるであろう。
(2)充填された回数の偶数数を増加させる、奇数は即ちF [I + 1] [K-1] + = F [i]が[K] * k個の%MOD低減されます
(3)、すなわち奇数F [I + 1] [K] + = F [i]が[K] * Bの%のMODに全く影響。
(魔法の正のソリューション?)
各も(これらに限定されない)、指数発生関数であり、Σ I ≥ 0 X I / I != E X 。各奇数(時間の制限回数iが偶数
番号)が指数関数発生である[シグマI ≥ 0 X 2 のI / 2 I =(!E X + E - X )/ 2 。
総⌈ M / 2 ⌉ 奇数及び⌊ M / 2 ⌋ 、偶数は、すべて一緒にすることによるものである
((E X + E - X )/ 2)⌈ M/ 2 ⌉ E X ⌊ M / 2 ⌋
。その答えは、それが最初だということであるN を乗じた時間係数のn !。
二項定理とブラケットの左側には、その上に展開し、各個別のカウントをプラスします