Universal Cup Judging System

Universal Cup

Limite de temps : 4 s Limite de mémoire : 1024 MB Points totaux : 100
Statistiques

Na przyjęciu jest $n$ gości. Każdy z nich ma 2 różne zainteresowania. Nie ma dwóch gości z takim samym zestawem zainteresowań. Gospodarz chce podzielić gości na grupy wielkości 2 lub 3, tak aby dowolnych dwóch gości w jednej grupie miało wspólne zainteresowanie. Każda grupa należy więc do jednego z poniższych przypadków:

  • Typ A: grupa dwóch gości mających jedno wspólne zainteresowanie;

  • Typ B: grupa trzech gości, z których wszyscy mają jedno wspólne zainteresowanie;

  • Typ C: grupa trzech gości, w której każda para ma jedno wspólne zainteresowanie, z wyłączeniem przypadku typu B.

Gospodarz chce zminimalizować liczbę $\alpha$ gości nieprzydzielonych do żadnej grupy. Jeśli istnieje wiele rozwiązań z minimalnym $\alpha$, należy znaleźć takie, które minimalizuje liczbę $\beta$ użytych grup typu B, zachowując minimalne $\alpha$. Napisz program wyznaczający te dwie liczby.

problem_5670_acfd0d49e2f3df38574d8bbdd1a76814.png

Rysunek 15: Powyżej pokazano dwa różne rozwiązania trzeciego przypadku testowego. Rozwiązanie po prawej nie używa żadnej grupy typu B, więc jest lepsze od rozwiązania po lewej.

Wejście

Każdy przypadek testowy składa się z $n+1$ wierszy. W pierwszym podane są dwie liczby całkowite $n,h$. Następnie występuje $n$ wierszy. Wiersz $(i+1)$ zawiera dwie liczby całkowite $x,y$, gdzie $1 \le x,y \le h$, oznaczające, że $i$-ty gość ma zainteresowania $x$ i $y$.

Ograniczenia

  • $2 \le n \le 10^6$.

  • $3 \le h \le 2n$.

Wyjście

Znajdź najlepsze rozwiązanie i wypisz liczbę $\alpha$ nieprzydzielonych gości oraz liczbę $\beta$ użytych w nim grup typu B. Naszym celem jest najpierw zminimalizować $\alpha$, a potem zminimalizować $\beta$, zachowując możliwie najmniejsze $\alpha$.

Przykład

Wejście 1

2 4
1 2
3 4

Wyjście 1

2 0

Wejście 2

2 3
1 2
3 1

Wyjście 2

0 0

Wejście 3

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

Wyjście 3

0 0

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.