Universal Cup Judging System

Universal Cup

Süre Sınırı: 4.0 s Bellek Sınırı: 256 MB Toplam puan: 100 Hack'lenebilir ✓
İstatistikler

Gitt et tre med $N$ noder og $N - 1$ kanter, der hver kant $i$ har et kompleksitetsnivå $l_i$. Avstanden $d(u, v)$ mellom two noder $u$ og $v$ er summen av kompleksitetsnivåene langs den unike stien mellom dem i treet. Merk at $d(u, v) = d(v, u)$ og $d(v, v) = 0$.

Det er $M$ gåter, og hver gåte $i$ krever $k_i$ informasjonsbiter, som befinner seg langs bestemte kanter i treet. Det er mulig at flere informasjonsbiter befinner seg på samme kant!

For to vilkårlige noder $S$ og $T$ er en reise mellom $S$ og $T$ vellykket hvis alle nødvendige informasjonsbiter for enhver gåte man støter på langs stien fra $S$ til $T$ blir samlet inn. Mer spesifikt regnes en gåte som løsbar under en reise hvis alle nødvendige informasjonsbiter for den gåten blir påtruffet langs stien.

Oppgaven er å beregne summen av avstandene for alle vellykkede reiser mellom to vilkårlige noder $S$ og $T$ (der $1 \le S \le T \le N$), modulo $10^9 + 7$.

Formelt er oppgaven å beregne:

$$\sum_{\substack{1 \le S \le T \le N, \\ \text{journey } (S, T) \text{ is successful}}} d(S, T)$$

Med start i en node $S$ må du reise til en annen node $T$ langs den unike stien i treet. Underveis vil enhver informasjonsbit som ligger på kantene til denne stien automatisk bli samlet inn. For at reisen fra $S$ til $T$ skal regnes som vellykket, må den oppfylle følgende betingelse:

  • La $O$ være mengden av gåter som det har blitt samlet inn minst én informasjonsbit for i løpet av reisen. Reisen er vellykket hvis og bare hvis alle informasjonsbitene som kreves for å løse hver gåte i mengden $O$ har blitt samlet inn. Med andre ord må du ha samlet inn hver eneste informasjonsbit som trengs for å løse hver gåte i $O$ fullstendig.

Inndata

Den første linjen inneholder to mellomromseparerte heltall $N$ og $M$ ($2 \le N \le 10^6, 1 \le M \le 10^6$).

Deretter følger $N - 1$ linjer, som hver inneholder tre mellomromseparerte heltall $a_i, b_i, l_i$ ($1 \le a_i, b_i \le N, 1 \le l_i \le 10^9$), som beskriver en kant $i$ som forbinder nodene $a_i$ og $b_i$ med kompleksitet $l_i$.

Deretter følger definisjonene av $M$ gåter. For hver gåte $i$ starter inndataene med én linje som inneholder $k_i$ etterfulgt av $k_i$ mellomromseparerte heltall $u_{i_1}, u_{i_2}, \dots, u_{i_{k_i}}$ ($0 \le k_i \le K, 1 \le u_{i_j} \le N - 1$), der $u_{i_j}$ er indeksene til kantene hvor informasjonsbitene som kreves for å løse gåten befinner seg.

Her er $K$ summen av alle $k_i$-verdier over alle gåter, og det er garantert at $1 \le K \le 10^6$.

Utdata

Skriv ut én linje som inneholder ett heltall, svaret på problemet modulo $10^9 + 7$.

Eksempel

Eksempelinndata 1

5 4
1 2 3
1 4 1
1 5 6
4 3 2
2 4 4
1 1
0
2 3 4

Eksempelutdata 1

17

Merk

problem_15524_1.png

Figur 1. Strukturen til treet. Rombene er informasjonsbitene, og verdiene på kantene er kompleksitetene.

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.