QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 512 MB Total points: 100 Interactive

#1834. Eulerowski?

Statistics

Zadanie jest interaktywne.

Ukryliśmy przed tobą nieskierowany graf $G$ o $n$ wierzchołkach. Gwarantujemy, że jest spójny i nie zawiera krawędzi wielokrotnych ani pętli.

Możesz zadać co najwyżej 60 zapytań następującej postaci:

  • Rozważ podzbiór $S$ zbioru wierzchołków grafu $G$. Ile krawędzi ma podgraf indukowany przez $S$? Innymi słowy, ile krawędzi grafu $G$ ma oba końce w $S$?

Twoim celem jest ustalenie, czy w tym grafie istnieje cykl Eulera. Cykl Eulera to droga w grafie, która przechodzi przez każdą krawędź dokładnie raz oraz zaczyna się i kończy w tym samym wierzchołku.

Zauważ, że graf $G$ jest ustalony przed rozpoczęciem interakcji. Innymi słowy, interaktor nie jest adaptacyjny.

Wejście

Pierwszy wiersz zawiera jedną liczbę całkowitą $n$ ($3 \le n \le 10^4$), oznaczającą liczbę wierzchołków grafu $G$. Gwarantujemy, że $G$ ma co najwyżej $10^5$ krawędzi, jest spójny i nie zawiera krawędzi wielokrotnych ani pętli.

Interakcja

Rozpocznij interakcję od odczytania wiersza z liczbą całkowitą $n$.

Aby poznać liczbę krawędzi w podgrafie grafu $G$ indukowanym przez $k$ wierzchołków $x_1,x_2,\ldots,x_k$, wypisz wiersz w formacie ? k x1 x2 ... xk ($0 \le k \le n$, $1 \le x_i \le n$, wszystkie $x_i$ są różne).

W odpowiedzi program jury wypisze wiersz z jedną liczbą całkowitą $m$: liczbą takich krawędzi.

Jeśli zapytanie jest niepoprawne lub zadasz więcej niż 60 zapytań, program jury wypisze $-1$ i zakończy interakcję. Otrzymasz wynik „Błędna odpowiedź”. Natychmiast zakończ swój program, aby uniknąć innych wyników.

Gdy ustalisz, czy graf zawiera cykl Eulera, wypisz jeden wiersz: ! YES, jeśli taki cykl istnieje, lub ! NO, jeśli nie istnieje.

Po wypisaniu każdego wiersza pamiętaj o znaku końca wiersza i opróżnieniu bufora wyjścia. W przeciwnym razie otrzymasz wynik „Przekroczono limit bezczynności”.

Przykład

Wejście 1

3
1
0

Wyjście 1

? 2 1 2
? 2 1 3
! NO

Uwagi

Ukryty graf w przykładzie ma $3$ wierzchołki i krawędzie $(2,1)$ oraz $(2,3)$.

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.