A tarefa é desenhar um polígono regular de n lados usando apenas uma bússola e uma régua não marcada.
A entrada (n) é um dos 10 números a seguir: 3, 4, 5, 6, 8, 10, 12, 15, 16, 17.
Método : Como você só tem uma régua e uma bússola, só pode desenhar pontos, linhas e círculos.
Uma linha só pode ser desenhada:
- através de dois pontos existentes.
Um círculo só pode ser desenhado:
- com um ponto como centro e com o perímetro passando por um segundo ponto.
Um ponto só pode ser desenhado:
na interseção de duas linhas,
na interseção (s) de uma linha e um círculo,
na interseção (s) de dois círculos,
desde o início, quando você pode desenhar 2 pontos para começar.
Através deste processo (e somente através deste processo), você deve desenhar as n linhas do n-gon solicitado, juntamente com qualquer trabalho necessário para chegar a esse estágio.
EDIT: A posição das interseções deve ser calculada, mas linhas e círculos podem ser desenhados por qualquer meio fornecido pelo idioma.
Saída é uma imagem de um polígono regular de n lados, mostrando o trabalho.
Graficamente, não há restrições quanto ao tamanho, formato, espessura da linha ou qualquer outra coisa não mencionada aqui. No entanto, deve ser possível distinguir visualmente linhas distintas, círculos e suas interseções. Além disso:
- As n linhas que compõem os lados do seu n-gon devem ter uma cor diferente do seu 'trabalho' (ou seja, pontos, círculos ou outras linhas) e uma cor diferente novamente para o seu plano de fundo.
- O trabalho pode deixar as bordas da área de desenho, exceto os pontos, que devem estar todos dentro dos limites visíveis da imagem.
- Um círculo pode ser um círculo completo ou apenas um arco (desde que mostre as interseções necessárias).
Uma linha é infinita (ou seja, sai da área de desenho) ou cortada nos dois pontos em que passa.EDIT: Uma linha pode ser desenhada a qualquer comprimento. Os pontos só podem ser criados onde a linha desenhada se cruza visualmente.- Um ponto pode ser desenhado como você desejar, incluindo a não marcação.
A pontuação é dupla, um envio recebe 1 ponto por entrada suportada, para um máximo de 10 pontos. Em caso de empate, a menor contagem de bytes vence.
O reconhecimento será concedido a envios que possam construir n-gons nas poucas etapas ou que sejam capazes de construir n-gons fora do intervalo especificado, mas isso não ajudará sua pontuação.
CIRCLE 0,0,500
ou preciso fazer R=SQRT(300^2+400^2): CIRCLE 0,0,R
? (BTW trabalhar fora postions de interseções é provavelmente mais difícil do que linhas e círculos.)
Carl Friedrich Gauss in 1796 showed that a regular n-sided polygon can be constructed with straightedge and compass if the odd prime factors of n are distinct Fermat primes