Star Trek
Note el límite de tiempo y memoria inusual para este problema
La Federación Interplanetaria es una alianza de planetas, indexados de a . Algunos planetas están conectados por túneles espaciales. En un túnel espacial, una nave puede volar en ambas direcciones muy rápido. Hay exactamente túneles espaciales, y podemos viajar desde cualquier planeta a cualquier planeta en la Federación usando estos túneles.
Es bien conocido que hay universos paralelos adicionales. Estos son copias exactas de nuestro universo, tienen los mismos planetas y túneles espaciales. Están indexados de a (nuestro universo tiene índice ). Denotamos el planeta en el universo como . Podemos viajar de un universo a otro usando portales dimensionales para cada , vamos a poner exactamente un portal que nos permite volar desde a , para algunos planetas y (i.e. ).
Una vez todos los portales están puestos, la nave "Selene" se embarcará en su primer viaje. Actualmente está orbitando alrededor de .
La capitana Alicia y el teniente Bob han decidido jugar el siguiente juego: eligen alternadamente un destino (planeta) hacia el que volar. Este planeta puede estar en el mismo universo, si un túnel espacial va hacia allí, o puede estar en otro universo, si un portal va hacia allí. Su objetivo es visitar lugares a los que nadie haya ido antes. Por eso, una vez que visitan el planeta no pueden volver (pero pueden visitar el planeta x en otro universo).
Alicia elige el primer destino. Si alguien no puede elegir un destino en su turno, pierde.
Alicia y Bob son muy inteligentes: conocen la localización de todos los túneles y portales, y ambos juegan óptimamente, Para cuántas formas distintas de poner los portales gana Alicia? Dos formas se consideran distintas si existe un índice tal que el -ésimo portal conecta un par diferente de planetas.
Este número puede ser muy grande, nos interesa su módulo .
Subtareas
- Subtarea 1 (7 puntos): .
- Subtarea 2 (8 puntos): y .
- Subtarea 3 (15 puntos): y .
- Subtarea 4 (15 puntos): .
- Subtarea 5 (20 puntos): y .
- Subtarea 6 (20 puntos): .
- Subtarea 7 (15 puntos): Sin restricciones adicionales.
Entrada
La primera línea de entrada contiene 2 enteros separados por espacios, () y ().
Cada una de las siguientes líneas contiene 2 enteros separados por espacios y (), denotando que y están conectados por un túnel espacial.
Salida
Imprima un solo entero, el número de posibles posicionamientos de portales donde Alicia gana (módulo ). Por tanto el rango de la salida es .
Ejemplo
Entrada ejemplo 1
3 1
1 2
2 3
Salida ejemplo 1
4
Nota
Solo hay un portal y formas diferentes de ponerlo. Solo en 4 de estas gana el Alicia.
Comments