QOJ.ac

QOJ

Time Limit: 3 s Memory Limit: 256 MB Total points: 100

#367. 長形大宅

Statistics

JOI-kun 屋企附近有一座闊落嘅大宅。大宅入面有 $N$ 間房,由東至西排成一行。由最東邊數起第 $i$ 間房叫做房間 $i$。對每個滿足 $1 \le i \le N-1$ 嘅 $i$,房間 $i$ 同房間 $i+1$ 之間都有一條走廊相連。走廊可以雙向通行。由房間進入走廊需要鎖匙。每條鎖匙都有一個叫做種類嘅編號。多條鎖匙可以有相同種類。

無論由房間 $i$ 定係房間 $i+1$ 出發,都需要一條種類為 $C_i$ 嘅鎖匙,先可以進入連接呢兩間房嘅走廊。

房間 $i$ 入面有 $B_i$ 條鎖匙,佢哋嘅種類係 $A_{i,j}$($1 \le j \le B_i$)。如果 JOI-kun 進入一間房,佢會執起房入面所有鎖匙。之後,佢就可以用呢啲鎖匙進入走廊。

JOI-kun 可以不限次數使用鎖匙。有時佢會攞到幾條相同種類嘅鎖匙。不過,相比起只有一條該種類嘅鎖匙,持有幾條相同種類嘅鎖匙並冇特別好處。

為咗應付喺大宅入面迷路嘅情況,JOI-kun 打算寫一個程式,回答以下查詢:

  • 如果 JOI-kun 冇帶任何鎖匙進入房間 $x$,佢可唔可以移動到房間 $y$?

你嘅任務係代替 JOI-kun 寫一個程式,回答以上查詢。

任務

畀定大宅同查詢嘅資料,請寫一個程式,對每個查詢判斷:假設佢而家喺大宅入面,而且冇任何鎖匙,佢可唔可以由一間房移動到另一間房。

輸入格式

由標準輸入讀取以下資料。

  • 輸入第一行包含一個整數 $N$,表示大宅嘅房間數目。
  • 輸入第二行包含 $N-1$ 個以空格分隔嘅整數 $C_1,C_2,\ldots,C_{N-1}$。呢個表示進入連接房間 $i$ 同房間 $i+1$ 嘅走廊,需要一條種類為 $C_i$ 嘅鎖匙。
  • 接落嚟 $N$ 行嘅第 $i$ 行($1 \le i \le N$)包含一個正整數 $B_i$,以及 $B_i$ 個以空格分隔嘅整數 $A_{i,1},A_{i,2},\ldots,A_{i,B_i}$。呢個表示房間 $i$ 入面有 $B_i$ 條鎖匙,佢哋嘅種類係 $A_{i,j}$($1 \le j \le B_i$)。
  • 下一行包含一個整數 $Q$,表示查詢數目。
  • 接落嚟 $Q$ 行嘅第 $k$ 行($1 \le k \le Q$)包含兩個以空格分隔嘅整數 $X_k,Y_k$。呢個表示第 $k$ 個查詢問:假設 JOI-kun 而家喺房間 $X_k$,而且冇任何鎖匙,佢可唔可以由房間 $X_k$ 移動到房間 $Y_k$。

輸出格式

向標準輸出寫入 $Q$ 行。呢 $Q$ 行嘅第 $k$ 行($1 \le k \le Q$),如果佢而家喺房間 $X_k$ 而且冇任何鎖匙,仍然可以由房間 $X_k$ 移動到房間 $Y_k$,就輸出 YES;否則輸出 NO。

資料範圍

所有輸入資料都滿足以下條件。

  • $2 \le N \le 500\,000$。
  • $1 \le Q \le 500\,000$。
  • $1 \le B_1+B_2+\cdots+B_N \le 500\,000$。
  • $1 \le B_i \le N$($1 \le i \le N$)。
  • $1 \le C_i \le N$($1 \le i \le N-1$)。
  • $1 \le A_{i,j} \le N$($1 \le i \le N$,$1 \le j \le B_i$)。
  • $B_i$ 個整數 $A_{i,1},\ldots,A_{i,B_i}$ 互不相同($1 \le i \le N$)。
  • $1 \le X_k \le N$($1 \le k \le Q$)。
  • $1 \le Y_k \le N$($1 \le k \le Q$)。
  • $X_k \ne Y_k$($1 \le k \le Q$)。

子任務

呢題總共有 4 個子任務。每個子任務嘅分數同額外限制如下:

子任務 1 [5 分]

  • $N \le 5\,000$。
  • $Q \le 5\,000$。
  • $B_1+B_2+\cdots+B_N \le 5\,000$。

子任務 2 [5 分]

  • $N \le 5\,000$。
  • $B_1+B_2+\cdots+B_N \le 5\,000$。

子任務 3 [15 分]

  • $N \le 100\,000$。
  • $C_i \le 20$($1 \le i \le N-1$)。
  • $A_{i,j} \le 20$($1 \le i \le N$,$1 \le j \le B_i$)。

子任務 4 [75 分]

冇額外限制。

範例

輸入格式 1

5
1 2 3 4
2 2 3
1 1
1 1
1 3
1 4
4
2 4
4 2
1 5
5 3

輸出格式 1

YES
NO
NO
YES

說明

  • 第一個查詢中,如果 JOI-kun 依次去房間 $2,1,2,3,4$,就會到達房間 $4$。
  • 第二個查詢中,佢只可以去房間 $3,4$。由於佢只可以攞到種類為 $1,3$ 嘅鎖匙,所以到唔到房間 $2$。
  • 第三個查詢中,佢攞唔到由房間 $5$ 去房間 $4$ 所需嘅種類 $4$ 鎖匙。因此,佢到唔到房間 $5$。
  • 第四個查詢中,如果佢依次去房間 $5,4,3$,就會到達房間 $3$。

輸入格式 2

5
2 3 1 3
1 3
1 2
1 1
1 3
1 2
4
1 3
3 1
4 3
2 5

輸出格式 2

NO
YES
NO
YES

輸入格式 3

7
6 3 4 1 2 5
1 1
1 5
1 1
1 1
2 2 3
1 4
1 6
3
4 1
5 3
4 7

輸出格式 3

YES
NO
YES

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
EditorialOpen Official EditorialQingyu- Download

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.