SPOJ Brasil

Problem hidden
This problem was hidden by Editorial Board member probably because it has incorrect language version or invalid test data, or description of the problem is not clear.

SPOJ Problem Set (sulamericana)

2922. Luzes do salão

Problema: LSALAO

A final mundial do ICPC será realizada em um luxuoso hotel com um grande salão de baile. Uma refeição será servida nesse salão e os organizadores decidiram decorar suas paredes com fotos de times campeões de anos anteriores.

Para evitar críticas sobre o favorecimento de alguns times sobre outros, o comitê organizador quer ter certeza que todas a fotos estão propriamente iluminadas. A única maneira direta que eles acharam para fazer isso é garantindo que cada foto tenha pelo menos uma lâmpada que a ilumine diretamente.

Dessa maneira, o perímetro da parede do salão pode ser dividida em partes iluminadas (onde as fotos podem ser colocadas) e partes escuras (que não servem para colocar fotos).

O salão tem a forma de uma caixa e contém várias lâmpadas. Cada lâmpada emite luz em todas direções, mas essa luz pode ser bloquada por colunas. Todas as colunas do salão tem forma cilíndrica e vão do chão ao teto, assim a luz não consegue passar através ou sobre elas. As colunas são obviamente colocadas de forma que a parte circular esteja paralela ao chão do salão.

Qualquer ponto p no perímetro da parede é dito iluminado se existe uma linha (um raio de luz) que começa na lâmpada, acaba em p e não toca ou passa através de nenhuma coluna.

Visão aérea de três salões com suas lâmpadas, colunas e áreas iluminadas e escuras.

Sua tarefa como ajudante da organização do ICPC é examinar a planta do salão e determinar a extensão total de seções iluminadas da parede. A planta consiste de um retângulo indicando uma visão aérea do salão, com as lâmpadas e colunas marcadas nela.

Entrada

Cada caso de teste consistirá de várias linhas. A primeira linha terá quatro inteiros: L, o número de lâmpadas, C, o número de colunas, X, o tamanho do salão na coordenada x e Y, o tamanho do salão na coordenada y. O canto inferior esquerdo está em (0, 0) enquanto o canto superior esquerdo está em (X, Y).

As próximas L linhas terão dois inteiros, cada um representando as coordenadas x e y de cada lâmpada. As últimas C linhas do caso de teste terão três inteiros cada, representando as coordenadas x e y do centro de uma coluna e seu raio, nessa ordem. Você pode assumir que 1 <= L, C <= 103 e 4 <= X, Y <= 106. Também, para todos os pares de coordenadas (x, y), 0 < x < X e 0 < y < Y, tanto para lâmpadas quanto para as posições centrais da coluna. Todos os raios das colunas serão positivos. Finalmente, nenhuma coluna irá se sobrepor, apesar de elas poderem se tocar, e nenhuma coluna irá encostar ou se intersectar com a borda do salão. Nenhuma lâmpada ficará dentro de uma coluna ou em seus domínios e nenhuma lâmapada ficará no mesmo lugar que outra. A entrada acaba com L = C = X = Y = 0.

Saída

Para cada caso de teste, imprima uma única linha com o comprimento total das partes iluminadas da parede periférica do salão. O resultado deve ser imprimido como um número real com exatamente quatro casas decimais, com a última casa decimal arredondada para cima.

Exemplo

Entrada
2 1 8 8
6 6
2 6
4 4 2
1 4 7 7
3 3
2 4 1
4 2 1
2 2 1
4 4 1
2 2 9 7
1 2
5 5
3 3 2
7 5 1
0 0 0 0

Saída
28.0000
0.0000
25.8214


Adicionado por:Wanderley Guimarães
Data:2008-08-09
Tempo limite:3s
Tamanho do fonte:50000B
Linguagem permitida:Todas exceto: AWK CLOJ ERL F# GO JS PERL 6 SCALA SED TCL
Origem:Final Sul-Americana da Maratona de Programação da ACM 2007

SPOJ System © 2012 Sphere Research Labs | Projekty informatyczne i aplikacje na zamówienie. All Rights Reserved.