タイトル説明
$のN * Mは$の条件を満足$ 01 $行列決定番号:
$ I $ $ 1〜L_iを$ 1 $列正確に一つの$ $ $ 1の(1)最初の行。
(2)$ I $ $ R_iと〜M $ 1 $コラム正確に一つの$ $ $ 1のラインを。
(3)列ごとに最大で1つ1 $ $ $ $ 1があります。
入力形式
二つの整数$ N、M $の最初の行。次に、N- $ $ $ 2 $ラインの各整数$ L_iを、R_iと$。
出力フォーマット
整数回答の列。998244353のモジュロ。
サンプル
サンプル入力
2 6
2 4
5 6
サンプル出力
12
データ範囲とヒント
$ 20%$、$ nは、m個の\ leqslant 12個のデータのための $。
$ 40%$、$ nは、m個の\ leqslant 50個のデータのための $。
$ 70%$、$ nは、m個の\ leqslant 300個のデータのための $。
$ 100%$、$ N、M \ leqslant 3000のデータのために $、$ 1 \ leqslant L_iを<R_iを\ leqslant M $。
問題の解決策
我々は最初の組み合わせの数を考える必要があり、この質問を参照してください、そして......
私は、サンプルの上に死ぬこと、および除外のことを考え始めたが、突然、言葉を多段階および除外、であることが判明し......
$ 20%の$アルゴリズム:
間違って検索しませんが、十分に懸命検索、形而上学の戻り値は覚えていない(試験40点でドライなものではありません......)クロックを使用して()、クロックで再帰関数()。
$ 100%の$アルゴリズム:
$ $ DP定義されたビットの平均、定義された$のDPを考慮[I] [J] $は、最初の列$ Iの$への電流を表し、$ J $右セクションで$ 1 $の列放電方式を有しています。
私は半分の時間を費やしたかを理解、私は列の右側を$最初の$はありませんが、$ R_iと$間隔の右側に注意を払う、のに説明してみましょう......
に移動する方法で、次の見: