QOJ.ac

QOJ

時間限制: 1.5 s 記憶體限制: 1024 MB 總分: 100 可 Hack ✓

#14720. רשת 77G

统计

ניתן להתייחס למפה של מיאולנד כאל עץ מושרש עם $n$ צמתים ו-$n - 1$ קשתות, שבו צמתים מייצגים ערים וקשת מייצגת כביש המחבר בין שתי ערים. הבירה נמצאת בשורש, צומת $1$.

כעת מיאולנד רוצה להתקין תחנות בסיס חדשות לגמרי של רשת 77G בחלק מהערים. כדי להבטיח שלכל כביש תהיה איכות רשת מספקת, לפחות באחת מערי הקצה של כל כביש חייבת להיות תחנת בסיס. אולם, בשל תקלות טכניות לא ידועות, במערכת הרשת יש $m$ תקלות. ניתן לתאר את תקלה $i$ באופן הבא: אם מותקנת תחנת בסיס בעיר $x_i$, אז בכל הערים בתוך תת-העץ של $x_i$ שמרחקן מ-$x_i$ הוא בדיוק $y_i$ לא ניתן להתקין תחנות בסיס; אחרת, התחנות יפריעו זו לזו ויהפכו לבלתי שמישות.

אנא עזרו למיאולנד לבחור מספר ערים כך שהתקנת תחנות בסיס בערים אלו תענה על כל הדרישות שלעיל. אם לא קיימת תוכנית תקפה, פלטו No.

קלט

כל קובץ בדיקה מכיל מספר מקרי בדיקה. השורה הראשונה מכילה את מספר מקרי הבדיקה $T$ ($1 \le T \le 10^3$). אחריה מופיע תיאור מקרי הבדיקה.

השורה הראשונה של כל מקרה בדיקה מכילה מספר שלם $n$ ($2 \le n \le 2 \times 10^5$), המציין את מספר הערים.

השורה השנייה מכילה $n - 1$ מספרים שלמים $f_2, f_3, \dots, f_n$ ($1 \le f_i < i$), כאשר $f_i$ מציין את האב של העיר $i$.

השורה השלישית מכילה מספר שלם $m$ ($0 \le m \le 2 \times 10^5$), המציין את מספר התקלות.

כל אחת מ-$m$ השורות הבאות מכילה שני מספרים שלמים $x_i$ ו-$y_i$ ($1 \le x_i, y_i \le n$), המציינים את התקלה ה-$i$. ייתכן שיהיו שתי תקלות זהות.

עבור כל קובץ בדיקה, מובטח כי סכום ה-$n$-ים על פני כל מקרי הבדיקה אינו עולה על $2 \times 10^5$, וסכום ה-$m$-ים על פני כל מקרי הבדיקה אינו עולה על $2 \times 10^5$.

פלט

עבור כל מקרה בדיקה, אם אין תוכנית תקפה, פלטו שורה No.

אחרת, פלטו שלוש שורות המייצגות את התוכנית שלכם:

  • בשורה הראשונה פלטו Yes.
  • בשורה השנייה פלטו מספר שלם $c$, המציין את מספר הערים שבחרתם.
  • בשורה השלישית פלטו $c$ מספרים שלמים שונים, המציינים את הערים שבחרתם.

אם ישנן מספר תוכניות תקפות, ניתן לפלוט כל אחת מהן. בעת פליטת התוכנית, ניתן לפלוט את $c$ הערים בכל סדר שהוא.

דוגמה

קלט לדוגמה 1

3
6
1 1 2 2 4
2
1 3
2 1
6
1 1 2 2 4
6
1 1
1 2
1 3
2 1
2 2
2 1
8
1 1 3 1 1 2 4
10
1 2
3 2
1 3
5 1
6 1
3 2
4 1
3 2
5 1
3 1

פלט לדוגמה 1

Yes
4
5 3 4 1
No
No

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.