Mengingat jumlah simpul n ≥ 3
dan "ukuran langkah" 1 ≤ m < n/2
(menunjukkan jarak antara dua simpul yang terhubung), output representasi grafis dari poligon reguler yang sesuai . Jika polygram terdiri dari beberapa loop tertutup, setiap loop harus dirender dalam warna garis yang berbeda. (Jika ini kedengarannya membingungkan, contoh-contoh di bawah ini semoga dapat menjelaskan semuanya.)
Aturan
Setiap solusi yang masuk akal untuk masalah ini kemungkinan akan memenuhi aturan-aturan ini secara otomatis - mereka hanya ada di sana untuk meletakkan beberapa batasan pada parameter output untuk mencegah jawaban seperti "Blok hitam ini benar-benar sebuah polygram, tetapi Anda tidak dapat melihatnya karena Saya mengatur lebar garis menjadi lebih dari 9000. "
- Anda dapat membuat polygram ke file (yang dapat ditulis ke disk atau ke aliran output standar) atau menampilkannya di layar.
- Anda dapat menggunakan grafik vektor atau raster. Jika output Anda dirasterisasi, gambar Anda harus memiliki dimensi 400x400 piksel atau lebih, dan jari - jari polygram (jarak dari pusat ke setiap titik) harus antara 35% dan 50% dari panjang sisi.
- Rasio aspek dari polygram harus 1 (sehingga simpulnya terletak pada lingkaran yang tepat) - kanvas gambar mungkin persegi panjang.
- Garis-garis polygram harus tidak lebih tebal dari 5% dari jari-jari (dan tentu saja, mereka harus memiliki ketebalan non-nol agar dapat terlihat).
- Anda dapat membuat kapak atau bingkai sebagai tambahan dari polygram, tetapi tidak ada yang lain.
- Anda dapat memilih warna latar belakang (solid).
- Untuk polygram yang terdiri dari beberapa loop tertutup, Anda harus mendukung setidaknya 6 warna yang berbeda secara visual , yang semuanya harus berbeda dari latar belakang. (Skala abu-abu baik-baik saja, asalkan warna cukup menyebar melalui spektrum.) Kode Anda masih harus bekerja selama lebih dari 6 loop, tetapi warna tidak harus dapat dibedakan untuk loop tambahan apa pun (yaitu Anda juga dapat menggunakan kembali warna dari loop sebelumnya pada saat itu).
Ini kode golf, jadi jawaban tersingkat (dalam byte) menang.
Contohnya
Berikut adalah semua output hingga n = 16
(di mana kolom sesuai dengan n
dan baris ke m
):
Klik untuk versi yang lebih besar.
Sebagai contoh untuk yang lebih besar n
, berikut adalah (n, m) = (29, 11)
dan (30, 12)
: