問題一覧 > 通常問題

No.1354 Sambo's Treasure

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 32
作問者 : PCTprobabilityPCTprobability / テスター : KoDKoD blackyukiblackyuki
4 ProblemId : 5761 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2021-05-07 19:38:39

問題文

$xy$ 平面上のとある村に住んでいるサンボ君は、近くにある危険な竹藪へ出かけることにしました。

竹藪は $x$ 座標と $y$ 座標がともに $0$ 以上 $N$ 以下の場所に広がっています。
サンボ君は、 $(x, y)$ にいるとき、 $(x + 1, y)$ または $(x, y + 1)$ へ移動することができます。
彼の目標は、 $(0, 0)$ からスタートし、 $M$ 個のチェックポイント全てを通り、 $(N, N)$ へ辿り着くことです。
$i$ 個目のチェックポイントは $(xc_i, yc_i)$ にあります。

しかし、竹藪での移動は安心して行えるものではありません。 $L$ 体のトラが住んでいるからです。
$i$ 体目のトラは $(xt_i, yt_i)$ に潜んでいます。トラがチェックポイントの場所にいないとは限りません。サンボ君がトラと同じ場所へ来てしまうと、トラを怒らせてしまいます。
トラをなだめるためには、サンボ君が持っている装飾品を $1$ つ渡す必要があります。装飾品を $1$ つも持っていない状態でトラを怒らせてしまうと、彼はトラに食べられてしまいます!

サンボ君は $K$ 個の装飾品を持ってスタートします。トラに食べられることなく、$M$ 個のチェックポイント全てを通り、 $(N, N)$ に辿り着く方法は何通りあるでしょうか?
答えは非常に大きくなることがあるので、 $998244353$ で割ったあまりを出力してください。

入力

$N \,\, M \,\, L \,\, K$
$xc_1 \,\, yc_1$
$xc_2 \,\, yc_2$
$\vdots$
$xc_M \,\, yc_M$
$xt_1 \,\, yt_1$
$xt_2 \,\, yt_2$
$\vdots$
$xt_L \,\, yt_L$
  • $1 \leq N \leq 2×10^5$
  • $0 \leq M \leq \min \left(10^5,N-1 \right)$
  • $0 \leq L \leq \min \left(100, (N+1)^2 - 2 \right)$
  • $0 \leq K \leq 10^5$
  • $0 < xc_i,yc_i < N$
  • $xc_i < xc_{i+1}$
  • $yc_i < yc_{i+1}$
  • $0 \leq xt_i,yt_i \leq N$
  • $(xt_i,yt_i) \neq (0,0)$
  • $(xt_i,yt_i) \neq (N,N)$
  • $i \neq j$ ならば、$(xt_i,yt_i) \neq (xt_j,yt_j)$
  • 入力は全て整数である。

出力

サンボ君がトラに食べられずに $M$ 個のチェックポイント全てを通り、 $(N, N)$ に辿り着く方法の総数を $998244353$ で割ったあまりを一行に出力してください。最後に改行してください。

サンプル

サンプル1
入力
3 1 1 0
1 1
2 2
出力
4

サンボ君は $(1,1)$ を経由して $(3,3)$ に向かう必要があります。
しかし、所持している装飾品は $0$ 個であるので、トラのいる $(2,2)$ を避けて進む必要があります。
このような移動方法は $4$ 通りあります。

サンプル2
入力
3 2 7 6
1 1
2 2
3 1
2 0
2 1
3 2
3 0
1 0
0 2
出力
8

トラが沢山います。非常に危険です。

サンプル3
入力
100 5 5 3
20 21
30 26
49 70
80 74
90 90
84 81
10 14
50 71
51 74
25 25
出力
131095149
$998244353$ で割った余りを求めてください。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。