No.2705 L to R Graph (Another ver.)
レベル : / 実行時間制限 : 1ケース 3.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 8
作問者 :
hirayuu_yc
/ テスター :
hamamu
Magentor
タグ : / 解いたユーザー数 8
作問者 :


問題文最終更新日: 2024-03-29 19:31:48
注意
この問題は F - L to R Graph から派生した問題ですが、F問題とは独立に解くことが可能です。
問題文
以下のような問題を考えます。ただし、L to R Graphとの重要な相違点を赤字で示しています。
以上 以下の整数からなる長さ の数列 、 を満たす 、 を満たす が与えられます。
とします。また、 を 回合成したものを とします。
頂点に から までの番号が付いた 頂点 辺の有向グラフがあります。このグラフに以下の操作を行います。
- について頂点 から頂点 への辺を張る。
頂点 から頂点 に到達できるか判定してください。
と素数 が与えられます。入力としてあり得るものは 通りありますが、そのうち、頂点 から頂点 に到達できる入力の個数を で割った余りを求めてください。
入力
- は素数
- 入力はすべて整数
出力
行に、答えを出力してください。
サンプル
サンプル1
入力
2 998244353
出力
10
条件を満たす入力は以下の 個です。
たとえば、 や などは条件を満たしません。
サンプル2
入力
3 924844033
出力
378
サンプル3
入力
12 313883611
出力
211838194
答えを で割った余りを求めることを忘れないでください。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。