QOJ.ac

QOJ

时间限制: 3 s 内存限制: 256 MB 总分: 100

#367. القصر الطويل

统计

يوجد قصر واسع بالقرب من منزل JOI-kun. يحتوي القصر على $N$ غرفة مصطفّة من الشرق إلى الغرب. تُسمّى الغرفة ذات الترتيب $i$ بدءًا من الغرفة الواقعة في أقصى الشرق بالغرفة $i$. لكل $i$ يحقق $1 \le i \le N-1$، يصل ممر بين الغرفتين $i$ و$i+1$. يمكن عبور الممرات في كلا الاتجاهين. نحتاج إلى مفتاح لدخول ممر من غرفة. لكل مفتاح رقم يُسمّى نوعه. وقد يكون لأكثر من مفتاح النوع نفسه.

لدخول الممر بين الغرفتين $i$ و$i+1$ من أيٍّ منهما، نحتاج إلى مفتاح من النوع $C_i$.

توجد $B_i$ مفاتيح في الغرفة $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}$ تفصل بينها مسافات. ويعني ذلك أننا نحتاج إلى مفتاح من النوع $C_i$ لدخول الممر الواصل بين الغرفتين $i$ و$i+1$.
  • يحتوي السطر $i$ ($1 \le i \le N$) من الأسطر $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$، وهو عدد الاستعلامات.
  • يحتوي السطر $k$ ($1 \le k \le Q$) من الأسطر $Q$ التالية على عددين صحيحين $X_k$ و$Y_k$ تفصل بينهما مسافة. ويعني ذلك أن الاستعلام $k$ يسأل عما إذا كان بإمكان JOI-kun الانتقال من الغرفة $X_k$ إلى الغرفة $Y_k$، بافتراض أنه موجود الآن في الغرفة $X_k$ دون أي مفاتيح.

الإخراج

اكتب $Q$ سطرًا إلى الإخراج القياسي. يحتوي السطر $k$ ($1 \le k \le Q$) على YES إذا كان يستطيع الانتقال من الغرفة $X_k$ إلى الغرفة $Y_k$، بافتراض أنه موجود الآن في الغرفة $X_k$ دون أي مفاتيح. وإلا، يحتوي على 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$).
  • الأعداد الصحيحة $A_{i,1},\ldots,A_{i,B_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$.
  • في الاستعلام الثالث، لا يستطيع الحصول على مفتاح من النوع $4$ من الغرفة $5$ إلى الغرفة $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.