Copiado al portapapeles
Descripción
Matías es un chef de renombre, últimamente se ha estado especializando en pizzas.
Habiendo preparado y probado cientos de pizzas, Matías anotó pares de ingredientes (representados por números enteros) que tienen el mismo sabor.
Esta relación de sabores iguales es transitiva y, a veces por flojera, Matías omite pares que ya están representados por el resto de las notas; por ejemplo, si anotó que los pares $(1, 2)$ y $(2, 3)$ tienen el mismo sabor, puede no anotar el par $(1, 3)$ porque se puede deducir que si $1$ sabe igual a $2$ y $2$ sabe igual a $3$, entonces $1$ sabe igual a $3$.
Sus amigos, Javier, Víctor y Lalo, se reunieron con Matías a hacer pizzas y se les ocurrió la siguiente estrategia:
(1) Poner todos los ingredientes en una lista ordenada aleatoriamente
(2) Revisar los ingredientes uno por uno en el orden de la lista
(3) Si el ingrediente actual aportaría un sabor nuevo a la pizza según las notas de Matías y los ingredientes ya usados, se lo añade a la pizza. Si no, no se lo añade.
Pronto se dieron cuenta, decepcionados, de que todas las pizzas que preparaban sabían igual; pero Víctor, siendo el informático del grupo, se interesó más por la cantidad total de pizzas diferentes que podrían hacer con su estrategia. Dos pizzas se consideran diferentes si los conjuntos de ingredientes usados de ambas son distintos.
Víctor calculó el valor rápidamente y quiere confirmar la respuesta contigo. Dada la cantidad de ingredientes y las notas de Matías, calcular la cantidad de pizzas diferentes que se pueden formar módulo $10^9+7$ usando la estrategia.
Entrada
La primera línea contiene dos enteros $n$ $(1 \leq n \leq 10^5)$ y $m$ $(0 \leq m \leq \min(\frac{n(n-1)}{2}, 10^5))$, indicando la cantidad total de ingredientes y el número de pares en las notas de Matías.
Las siguientes $m$ líneas contienen dos enteros $a_i$, $b_i$ $(1 \leq a_i, b_i \leq n, a_i \neq b_i)$ cada una, indicando que el ingrediente $a_i$ tiene el mismo sabor que el ingrediente $b_i$ y viceversa. No existen pares repetidos en las notas de Matías.
Salida
Un número entero, indicando la cantidad de pizzas diferentes que se pueden formar módulo $10^9+7$ usando la estrategia descrita.
(7 puntos) $m = n-1$; $a_i = i, b_i = i+1$ para $1 \leq i \leq m$.
(26 puntos) Cada ingrediente aparece como máximo 1 vez en las notas de Matías.
(67 puntos) Sin restricciones adicionales.