Pertimbangkan segitiga sama sisi standar, dengan simpul yang berlabel menggunakan koordinat barycentric :

Kita dapat mengubah segitiga 3 simpul ini menjadi segitiga 6 simpul dengan menambahkan baris baru 3 simpul (satu lagi dari yang ada di sisi segitiga 3 simpul asli), menghilangkan tepi internal (tetapi bukan simpul internal) dan kembali menormalkan koordinat:
Mengulangi proses untuk pergi dari segitiga 6 simpul ke segitiga 10 simpul, tambahkan garis 4 simpul (sekali lagi, satu lagi dari yang ada di sisi segitiga 6 simpul yang asli), hapus setiap tepi internal (tetapi bukan simpul internal ) dan menormalkan kembali koordinat:
Proses ini dapat diulang tanpa batas. Tujuan dari tantangan ini adalah memberikan bilangan bulat yang Nmenunjukkan berapa kali proses ini telah dilakukan, menampilkan semua node untuk segitiga terkait dalam koordinat barycentric.
Memasukkan
Program / fungsi Anda harus memasukkan bilangan bulat non-negatif tunggal yang Nmenunjukkan berapa kali proses ini telah diterapkan. Perhatikan bahwa untuk N=0, Anda harus menampilkan segitiga asli dengan 3 node.
Input dapat berasal dari sumber apa pun (parameter fungsi, stdio, dll.).
Keluaran
Program / fungsi Anda harus menampilkan semua node dalam koordinat barycentric yang dinormalisasi. Urutan node tidak masalah. Suatu angka dapat ditentukan sebagai fraksi (pengurangan fraksi tidak diperlukan) atau angka floating point. Anda juga dapat menampilkan vektor "skala" untuk menentukan suatu simpul. Misalnya, ketiga output berikut ini setara dan diizinkan:
0.5,0.5,0
1/2,2/4,0
[1,1,0]/2
Jika menggunakan output floating point, output Anda harus akurat hingga dalam 1%. Outputnya dapat berupa sink yang diinginkan (stdio, nilai balik, parameter balik, dll.). Perhatikan bahwa meskipun koordinat barycentric secara unik ditentukan oleh hanya 2 angka per node, Anda harus mengeluarkan semua 3 angka per node.
Contohnya
Contoh kasus diformat sebagai:
N
x0,y0,z0
x1,y1,z1
x2,y2,z2
...
di mana baris pertama adalah input N, dan semua baris berikut membentuk simpul x,y,zyang harus di output tepat sekali. Semua angka diberikan sebagai perkiraan angka floating point.
0
1,0,0
0,1,0
0,0,1
1
1,0,0
0,1,0
0,0,1
0.5,0,0.5
0.5,0.5,0
0,0.5,0.5
2
1,0,0
0,1,0
0,0,1
0.667,0,0.333
0.667,0.333,0
0.333,0,0.667
0.333,0.333,0.333
0.333,0.667,0
0,0.333,0.667
0,0.667,0.333
3
1,0,0
0.75,0,0.25
0.75,0.25,0
0.5,0,0.5
0.5,0.25,0.25
0.5,0.5,0
0.25,0,0.75
0.25,0.25,0.5
0.25,0.5,0.25
0.25,0.75,0
0,0,1
0,0.25,0.75
0,0.5,0.5
0,0.75,0.25
0,1,0
Mencetak gol
Ini adalah kode golf; kode terpendek dalam byte menang. Celah standar berlaku. Anda dapat menggunakan built-in yang diinginkan.


[1,2,3]/6?