QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 256 MB Total points: 100

#2026. Minimizar aristas

Statistics

Bessie tiene un grafo conexo y no dirigido $G$ con $N$ vértices numerados del $1\ldots N$ y $M$ aristas ($2\le N\le 10^5, N-1\le M\le \frac{N^2+N}{2}$). $G$ puede contener bucles (aristas que conectan un vértice consigo mismo), pero no aristas paralelas (varias aristas que conectan los mismos extremos).

Sea $f_G(a,b)$ una función booleana que, para cada $1\le a\le N$ y $0\le b$, vale verdadero si existe un recorrido desde el vértice $1$ hasta el vértice $a$ que atraviesa exactamente $b$ aristas, y falso en caso contrario. Si una arista se atraviesa varias veces, se cuenta ese mismo número de veces.

Elsie quiere copiar a Bessie. En concreto, quiere construir un grafo no dirigido $G'$ tal que $f_{G'}(a,b)=f_G(a,b)$ para todos los valores de $a$ y $b$.

Elsie quiere hacer la menor cantidad de trabajo posible, así que desea construir el grafo más pequeño posible. Por tanto, tu tarea consiste en calcular el mínimo número posible de aristas de $G'$.

Cada entrada contiene $T$ ($1\le T\le 5\cdot 10^4$) casos de prueba que deben resolverse de forma independiente. Se garantiza que la suma de $N$ en todos los casos de prueba no supera $10^5$, y que la suma de $M$ en todos los casos de prueba no supera $2\cdot 10^5$.

Entrada

La primera línea de la entrada contiene $T$, el número de casos de prueba.

La primera línea de cada caso de prueba contiene dos enteros $N$ y $M$.

Cada una de las siguientes $M$ líneas de cada caso de prueba contiene dos enteros $x$ e $y$ ($1\le x\le y\le N$), que indican que existe una arista entre $x$ e $y$ en $G$.

Los casos de prueba consecutivos están separados por líneas en blanco para facilitar la lectura.

Salida

Para cada caso de prueba, imprime el mínimo número posible de aristas de $G'$ en una línea nueva.

Ejemplos

Entrada 1

2

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

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

Salida 1

4
5

Nota

En el primer caso de prueba, Elsie puede construir $G'$ partiendo de $G$ y eliminando $(2,5)$. O puede construir un grafo con las siguientes aristas, ya que no está obligada a limitarse a eliminar aristas de $G$:

1 2
1 4
4 3
4 5

Elsie definitivamente no puede conseguir menos de $N-1$ aristas, puesto que $G'$ también debe ser conexo.

Entrada 2

7

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

10 11
1 2
1 5
1 6
2 3
3 4
4 5
4 10
6 7
7 8
8 9
9 9

13 15
1 2
1 5
1 6
2 3
3 4
4 5
6 7
7 8
7 11
8 9
9 10
10 11
11 12
11 13
12 13

16 18
1 2
1 7
1 8
2 3
3 4
4 5
5 6
6 7
8 9
9 10
9 15
9 16
10 11
11 12
12 13
13 14
14 15
14 16

21 22
1 2
1 9
1 12
2 3
3 4
4 5
5 6
6 7
7 8
7 11
8 9
8 10
12 13
13 14
13 21
14 15
15 16
16 17
17 18
18 19
19 20
20 21

20 26
1 2
1 5
1 6
2 3
3 4
4 5
4 7
6 8
8 9
8 11
8 12
8 13
8 14
8 15
8 16
8 17
9 10
10 18
11 18
12 19
13 20
14 20
15 20
16 20
17 20
19 20

24 31
1 2
1 7
1 8
2 3
3 4
4 5
5 6
6 7
6 9
8 10
10 11
10 16
10 17
10 18
10 19
10 20
11 12
12 13
13 14
14 15
15 16
15 17
15 18
15 19
15 20
15 21
15 22
15 23
15 24
21 22
23 24

Salida 2

10
11
15
18
22
26
31

Nota

En cada uno de estos casos de prueba, Elsie no puede conseguir un resultado mejor que el de Bessie.

### Subtareas
  • Todos los casos de prueba de la entrada 3 cumplen $N\le 5$.
  • Todos los casos de prueba de las entradas 4–5 cumplen $M=N$.
  • Para todos los casos de prueba de las entradas 6–9, si no se cumple que $f_G(x,b)=f_G(y,b)$ para todos los valores de $b$, entonces existe un valor de $b$ tal que $f_G(x,b)$ es verdadero y $f_G(y,b)$ es falso.
  • Todos los casos de prueba de las entradas 10–15 cumplen $N\le 10^2$.
  • Los casos de prueba de las entradas 16–20 no tienen restricciones adicionales.

Autor del problema: Benjamin Qi

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.