問題一覧 > 通常問題

No.2316 Freight Train

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 190
作問者 : 👑 amentorimaru / テスター : tatyam cleantted
1 ProblemId : 9210 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2023-05-26 12:26:40

問題文

NN 匹のエトワーニュくんが何組かで一列に並んで一緒に歩く電車ごっこをしています。かわいいですね。


ii 匹目のエトワーニュくんは PiP_i 匹目のエトワーニュくんの後ろにいます。Pi=1P_i=-1 の場合は先頭にいます。

QQ 個のクエリが与えられますので AiA_i 匹目のエトワーニュくんと BiB_i 匹目のエトワーニュくんが同じ電車の列にいるか判定してください。

入力

N QN \ Q
P1 P2  PNP_1 \ P_2 \ \dots \ P_N
A1 B1A_1 \ B_1
A2 B2A_2 \ B_2
\vdots
AQ BQA_Q \ B_Q
  • 入力は全て整数
  • 1N,Q2×1051 \le N,Q \le 2\times 10^5
  • 1Ai,BiN1 \le A_i,B_i \le N
  • 1PiN1 \le P_i \le N または Pi=1P_i=-1
  • Pi1,Pj1P_i \ne -1, P_j \ne -1 である iji \ne j について PiPjP_i \ne P_j
  • PiiP_i \ne i
  • 全ての電車には先頭となるエトワーニュくんがいる

出力

同じ列にいる場合は Yes、そうでない場合は No を出力してください。

サンプル

サンプル1
入力
5 3
-1 4 1 -1 3
1 5
4 2
3 4
出力
Yes
Yes
No

一列目は前から 1,3,51,3,5 のエトワーニュくんが並んでおり

二列目は前から 4,24,2 のエトワーニュくんが並んでいます。

11 番目のクエリはどちらも一列目にいるため Yes を出力します。

22 番目のクエリはどちらも二列目にいるため Yes を出力します。

33 番目のクエリは違う列にいるため No を出力します。

サンプル2
入力
5 3
-1 -1 -1 -1 -1
1 2
2 3
4 4
出力
No
No
Yes

全てのエトワーニュくんは一匹だけで歩いてもかわいいです。

クエリに同じ値が出てくる場合もあります。

サンプル3
入力
20 20
7 20 11 -1 12 -1 -1 17 15 6 16 -1 9 4 3 5 14 19 -1 1
7 11
16 15
20 7
7 12
11 16
20 20
19 5
19 1
10 20
14 9
11 19
11 15
2 18
12 2
1 12
15 4
19 10
14 4
18 2
10 10
出力
No
Yes
Yes
No
Yes
Yes
No
No
No
No
No
Yes
No
No
No
No
No
Yes
No
Yes

大きな N,QN,Q が出てくることに注意してください。

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