El desafío es dibujar el contorno de una 'isla', generada usando una semilla como entrada.
- Entrada (semilla): cadena de 6 caracteres (exactamente) que solo permite letras minúsculas (es decir, abcdefghijklmnopqrstuvwxyz) - ejemplos: 'island', 'aaaaaa', 'jhgcfj'
- Cada semilla debe dar una isla única (es decir, no habrá dos semillas que den el mismo resultado)
- Ningún resultado debe ser una transformación del resultado de otra semilla. Eso es traslación, reflexión, rotación, escala o cualquier combinación de los mismos.
- Usar la misma semilla siempre debe dar el mismo resultado
- Salida: imagen de 600 px por 600 px
Se dibuja una isla válida usando una sola línea, que:
- forma un circuito cerrado
- tiene 1 px de grosor sin suavizado, desenfoque, etc.
- es continuo (es decir, después de dibujar un píxel, el siguiente píxel estará en uno de los 8 espacios adyacentes que no está ocupado)
- no se cruza en ningún punto
- no abandona los límites de la imagen
- es negro (# 000), sobre un fondo blanco (#FFF)
- no tiene líneas de simetría reflexiva
- debe encerrar espacios en blanco
El código fuente tiene un límite de 500 bytes.
Aparte de eso, la popularidad decide; La mayoría de los votos gana.
Respuestas:
BBC basic
Aquí hay un algoritmo muy simple, que podría refinarse para obtener más realismo. Si hay más cambios en las reglas, estoy dispuesto a cambiar / eliminar.
tome la cadena de 6 caracteres y agregue
}@
para garantizar la asimetría (esta elección particular de caracteres da islas que se parecen vagamente a la Antártida)dibuje una línea que conecte 8 puntos a intervalos de 45 grados, con la distancia desde el centro determinada por el código ASCII.
fuente
Algoid
Algoid es un lenguaje similar a LOGO o Turtle y está basado casi en su totalidad en gráficos.
Semilla:
supercalifragilisticexpialiadocious even though the sound of it is rather quite atrocious
Semilla:
islands in the stream
fuente