Universal Cup Judging System

Universal Cup

Süre Sınırı: 1.0 s Bellek Sınırı: 256 MB Toplam puan: 100 Hack'lenebilir ✓
İstatistikler

En un piso infinitamente grande, debes colocar un número infinito de baldosas.

Cada baldosa tiene un patrón de celdas cuadradas de tamaño $n \times n$. Cada celda de la baldosa tiene una tira de luz LED fijada a lo largo de sus bordes inferior e izquierdo, con diferentes colores que crean un patrón colorido.

El patrón en cada baldosa es exactamente el mismo. Al colocar las baldosas, pondremos un número infinito de ellas una al lado de la otra sin espacios, formando un patrón de tiras de luz infinitamente grande.

Hay $k$ colores diferentes disponibles, y debes elegir los colores correspondientes para un total de $2n^2$ tiras de luz en una baldosa, tras lo cual las demás baldosas replicarán automáticamente este esquema de coloración. Al colocar las baldosas, todas se pondrán en la misma dirección, lo que significa que pueden verse como una traslación directa de una sola baldosa unida a las demás sin rotación.

Mientras caminas por el piso, quieres saber cuántos esquemas esencialmente diferentes existen para colorear las baldosas. Dado que el piso es infinito y una persona puede mirar hacia diferentes direcciones (norte, sur, este, oeste) al observar las baldosas, dos esquemas se definen como esencialmente iguales si y solo si:

Al observar el plano infinito del piso creado por los dos esquemas, si existe una serie de traslaciones o rotaciones (excluyendo reflexiones) que pueda hacer que los colores de las tiras de luz en todas las posiciones del piso sean completamente idénticos, entonces estos dos esquemas se consideran esencialmente iguales.

Entrada

Hay múltiples casos de prueba en un solo archivo de entrada. La primera línea de la entrada contiene un solo entero positivo $T$ ($1 \le T \le 10$), que indica el número de casos de prueba.

Para cada caso de prueba:

  • La primera línea contiene dos enteros $n$ y $k$ ($1 \le n \le 10^9$, $1 \le k \le 10^9$), que representan el tamaño del patrón y el número de colores, respectivamente.

Salida

Para cada caso de prueba, imprime una sola línea con un único entero, que representa el número de esquemas esencialmente diferentes, módulo $10^9 + 7$.

Ejemplo

Entrada 1

3
1 2
2 2
114514 5201314

Salida 1

3
31
377726028

Nota

La siguiente imagen muestra 19 esquemas de construcción para $n = k = 2$ (para ilustrar mejor el efecto del embaldosado, cada imagen muestra 9 baldosas dispuestas en un patrón de $3 \times 3$, con luces LED en colores oscuro y claro). Al intercambiar los colores oscuro y claro de los primeros 12 esquemas, se pueden obtener otros 12 esquemas, resultando en un total de 31 esquemas.

problem_15430_1.png

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.