QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 1024 MB Total points: 100

#1825. Strażnicy króla

Statistics

W pewnym królestwie król pragnie chronić swoich obywateli poprzez rozmieszczenie strażników. Zrekrutował on pewną liczbę strażników i wyposażył ich w ciężkie zbroje dla ochrony przed bandytami, obcymi rycerzami i innymi niegodziwcami. Jego strażnicy są twardzi, ale niestety niezbyt bystrzy i będą atakować każdego, kto nosi zbroję, nawet siebie nawzajem!

Królestwo składa się z pewnej liczby wiosek połączonych drogami. Wszystkie drogi są słabej jakości. Niektóre są błotniste, inne mają chwiejne mosty. Żadna z nich nie jest w stanie utrzymać strażnika w pełnej zbroi. Dlatego król musi zdecydować, które drogi ulepszyć, aby jego strażnicy mogli dotrzeć do całego królestwa. Drogi są dwukierunkowe. Każdy strażnik może zostać rozmieszczony tylko w jednej wiosce z określonego podzbioru wiosek królestwa.

Król musi zminimalizować koszt ulepszenia dróg, spełniając jednocześnie kilka innych ograniczeń:

  • Każdy strażnik musi zostać rozmieszczony; żaden nie może zostać pominięty.
  • Każdy strażnik musi zostać rozmieszczony w swoim podzbiorze wiosek.
  • Każda wioska musi być osiągalna przez dokładnie jednego strażnika. Jeśli dwóch strażników może do siebie dotrzeć, będą walczyć.

Pomóż królowi wyznaczyć minimalny koszt ulepszenia dróg w jego królestwie przy zachowaniu powyższych ograniczeń.

Wejście

Pierwsza linia wejścia zawiera trzy liczby całkowite $n$ ($1 \le n \le 300$), $r$ ($0 \le r \le \frac{n(n-1)}{2}$) oraz $g$ ($1 \le g \le n$), gdzie $n$ to liczba wiosek, $r$ to liczba dróg, a $g$ to liczba strażników. Wioski są ponumerowane od $1$ do $n$.

Każda z kolejnych $r$ linii zawiera trzy liczby całkowite $a$, $b$ ($1 \le a < b \le n$) oraz $c$ ($1 \le c \le 1000$). Każda linia opisuje drogę między wioską $a$ a wioską $b$, której koszt ulepszenia wynosi $c$. Drogi są dwukierunkowe; strażnik może przemieszczać się z $a$ do $b$ lub z $b$ do $a$. Każda para wiosek jest połączona co najwyżej jedną drogą.

Każda z kolejnych $g$ linii zaczyna się od liczby całkowitej $k$ ($1 \le k \le n$), a następnie zawiera $k$ liczb całkowitych $v$ ($1 \le v \le n$). Każda linia opisuje wioski wchodzące w skład podzbioru, w którym może zostać umieszczony dany strażnik. Podzbiory mogą się nakładać.

Wyjście

Wypisz pojedynczą liczbę całkowitą, która jest minimalnym kosztem, jaki król musi ponieść, aby ulepszyć wystarczającą liczbę dróg tak, aby każda wioska była osiągalna przez dokładnie jednego strażnika i każdy strażnik był rozmieszczony. Wypisz $-1$, jeśli nie jest możliwe rozmieszczenie strażników w sposób spełniający wszystkie ograniczenia.

Przykład

Wejście 1

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

Wyjście 1

8

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#598Editorial Open集训队作业 解题报告 by 陈翔乐Qingyu2026-01-02 22:49:48 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.