Estou olhando pela janela do sótão para o quintal do meu vizinho. Eles têm um cachorro acorrentado a um poste no centro do quintal. O cachorro corre pelo quintal, mas está sempre no final de sua cadeia, por isso acaba deixando uma trilha na terra. Normalmente essa pista seria perfeitamente circular, mas meus vizinhos têm outros postes em seu quintal nos quais a corrente do cachorro é presa. Cada vez que a corrente do cão atinge um poste, o cão começa a girar em torno do novo poste, independentemente do comprimento da corrente que resta como raio. Como os pólos, o cachorro e a corrente têm largura zero (meus vizinhos são matemáticos), a corrente pode enrolar indefinidamente em torno de um poste sem que o raio do círculo diminua. O cão também pode passar pela corrente (e não pelo colarinho) se a corrente estiver em seu caminho. Depois de observar essa estranheza por um tempo, decido escrever um código para simular o cão do meu vizinho. O código pegará as localizações de um poste central, ao qual o cão está acorrentado, as localizações dos outros postes no quintal dos meus vizinhos, o comprimento da corrente e a localização inicial do cachorro, e exibirá um diagrama indicando a caminho onde o cachorro se desgastou na grama. Você pode assumir que qualquer combinação do seguinte é constante (e, portanto, não as aceita como entrada):
Localização do poste ao qual o cão está acorrentado
Comprimento da corrente
Localização inicial do cão
O sol está nascendo, então o espaço no chão do meu sótão iluminado pela janela está encolhendo, me dando cada vez menos espaço para escrever meu código. Tente minimizar a contagem de bytes do seu código para que eu tenha espaço para redigitá-lo no meu sótão.
Casos de teste
Aqui, eu suponho que o cão comece 3 unidades ao sul do pólo em que está acorrentado (o ponto vermelho), localizado em 0,0
. Eu indiquei onde os pólos estão com pontos para maior clareza, você não precisa incluí-los em sua saída.
Poles at 1,2 -1,2
Poles at 0,.5
Poles at 0,1 1,1 -2,1 -1,-.5
Poles at 0,1 1,1
{0,.5}
vertical sem o maior círculo. O cão começa basicamente preso no segundo poste.
{0,-.5}
?