QOJ.ac

QOJ

시간 제한: 2.0 s 메모리 제한: 1024 MB 총점: 100 해킹 가능 ✓

#15305. Doo Doo Doo

통계

Little Ika: Doo Doo Doo ~.

Hyacinthia quiere ir al centro de las "Ruinas del Fin de la Nube" (Eye of Dawn) para buscar botín, pero hay $n$ muros bloqueando su camino. El $i$-ésimo muro es un círculo centrado en el origen $(0, 0)$ con un radio de $r_i$. Hay $k_i$ puertas en el muro, y las coordenadas de la $j$-ésima puerta están dadas por $\left(r_i \cdot \cos \left(\frac{2\pi}{M} \cdot p_{i,j}\right), r_i \cdot \sin \left(\frac{2\pi}{M} \cdot p_{i,j}\right)\right)$. El grosor del muro y el ancho de las puertas son despreciables, y Hyacinthia no puede volar sobre los muros.

Hyacinthia quiere hacerte $m$ preguntas. Cada vez te dirá su punto de partida, y necesitas responder cuál es la distancia más corta al centro. Se garantiza que el punto de partida está en el lado interior de un muro y justo al lado de la superficie del muro.

Entrada

La primera línea contiene dos enteros $n, m$ ($2 \le n \le 2 \cdot 10^5, 1 \le m \le 2 \cdot 10^5$), que representan el número de muros y el número de consultas.

Las siguientes $n$ líneas describen cada muro. Cada línea comienza con dos enteros $r_i, k_i$ ($1 \le r_i \le 10^8, 0 \le k_i \le 2 \cdot 10^5$), que representan que el $i$-ésimo muro es un círculo con radio $r_i$ y tiene $k_i$ puertas. A continuación, hay $k_i$ enteros $p_{i,1}, p_{i,2}, \dots, p_{i,k_i}$, que representan que las coordenadas de la $j$-ésima puerta son $\left(r_i \cdot \cos \left(\frac{2\pi}{M} \cdot p_{i,j}\right), r_i \cdot \sin \left(\frac{2\pi}{M} \cdot p_{i,j}\right)\right)$, donde $M = 3.6 \cdot 10^8$. Se garantiza que $0 \le p_{i,1} < p_{i,2} < \dots < p_{i,k_i} < M$, $k_n = 0$, $\sum_{i=1}^n k_i \le 2 \cdot 10^5$, y $1 \le r_1 < r_2 < \dots < r_n \le 10^8$.

Las siguientes $m$ líneas contienen cada una dos enteros $t_i, q_i$, indicando que si Hyacinthia comienza desde el interior del $t_i$-ésimo muro en el punto $\left(r_{t_i} \cdot \cos \left(\frac{2\pi}{M} \cdot q_i\right), r_{t_i} \cdot \sin \left(\frac{2\pi}{M} \cdot q_i\right)\right)$, ¿cuál es la distancia más corta al origen? (si no es alcanzable, por favor imprime "-1").

Salida

Para cada consulta, imprime una sola línea con un número de punto flotante que represente la respuesta. Si no es alcanzable, imprime "-1". Una respuesta se considera correcta si el error relativo o absoluto no excede $10^{-6}$ en comparación con la respuesta estándar.

Ejemplos

Entrada 1

3 4
2 2 0 90000000
5 0
8 0
1 114514
2 0
2 180000000
3 233

Salida 1

2.0000000000
5.0000000000
7.4056093871
-1

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.