Hide

Problem E
Diamantes sensíveis

Languages en pt

João o joalheiro é um ambicioso comerciante que vende diamantes para diferentes tipos de clientes e, para atender a variada demanda, comercializa diamantes de tamanhos variados. Embora sua rede de negócios seja bastante vasta, ele não é o vendedor mais cuidadoso e muitas vezes ao guardar diamantes novos no estoque, acaba quebrando diamantes que estavam lá previamente.

O estoque de João é tão enorme que pode ser abstraído pelo semiplano infinito de $y \geq 0$ onde os diamantes são postos no chão (eixo $x$). Cada diamante pode ser representado como um quadrado rotacionado em $45$ graus em relação a um quadrado de lados paralelos aos eixos coordenados. Os diamantes tocam o chão (eixo $x$) com um de seus vértices e todos seus demais pontos tem coordenada $y$ positiva.

João recebe $n$ diamantes, que são postos no armazém um depois do outro e são numerados de $1$ a $n$ pela ordem do input. O $i$-ésimo diamante é definido por $x_ i$ e $y_ i$, seu centro.

Para cada diamante posto você deve dizer quantos e quais diamantes previamente encontrados no armazém o último diamante quebra, ou seja, quais diamantes que não foram quebrados ainda e cuja interseção com o diamante recém posto tem área não nula (note que quando um diamante é posto no armazém ele não é quebrado mesmo que quebre outros diamantes, e os diamantes que são quebrados não devem ser considerados pelos diamantes postos a seguir).

Input

A primeira linha do input conterá um inteiro $n$ ($2 \leq n \leq 100\, 000$), o número de diamantes armazenados por João. Seguirão $n$ linhas, numeradas de $1$ a $n$ na ordem em que são dadas, a $i$-ésima contém dois inteiros $x_ i$ e $y_ i$ ($-1\, 000\, 000\, 000 \leq x_ i \leq 1\, 000\, 000\, 000, 1 \leq y_ i \leq 1\, 000\, 000\, 000$) o centro do diamante de número $i$.

Output

Imprima $n$ linhas, onde em cada linha, o primeiro inteiro é $q_ i$, a quantidade de diamantes quebrados na $i$-ésima inserção seguido por $q_ i$ inteiros, os índices, numerados de $1$ a $n$ pela ordem em que são lidos no input, em ordem crescente dos diamantes anteriores quebrados pelo $i$-ésimo diamante.

Sample Input 1 Sample Output 1
4
-1 1
1 1
1 2
0 1
0
0
1 2
2 1 3

Please log in to submit a solution to this problem

Log in