Çin daması oyunu altı köşeli yıldız şeklinde boşluklu bir tahtada oynanır:
.
Boş panoları GYORPB
ve altı renkli başlangıç yeri için harfleri kullanarak, bu tahtanın ASCII-sanat gösterimini oluşturabiliriz :
G
G G
G G G
G G G G
B B B B . . . . . Y Y Y Y
B B B . . . . . . Y Y Y
B B . . . . . . . Y Y
B . . . . . . . . Y
. . . . . . . . .
P . . . . . . . . O
P P . . . . . . . O O
P P P . . . . . . O O O
P P P P . . . . . O O O O
R R R R
R R R
R R
R
Daha ilginç hale getirmek için, boyutunu da değiştirebiliriz. Bir tahtanın boyutunu üçgen başlangıç konumlarının yan uzunluğuyla ölçeceğiz: yukarıdaki tahtanın boyutu 4'tür.
Bunları elle yazmak gerçekten acı verici olduğundan, bunu yapmak için bir program (veya işlev) yazalım!
ayrıntılar
Kodunuz, kartın boyutunu temsil eden, STDIN, ARGV veya fonksiyon argümanı yoluyla pozitif bir tamsayı almalıdır. Dama tahtası desenini STDOUT'a gönder (gönderiminiz bir işlevse, dönüşümlü olarak dizge olarak döndürebilirsiniz).
Çıktı ya olmalı
- hiç iz bırakma alanı yoksa veya
- Deseni, 6 * N + 1 genişliğinde mükemmel bir dikdörtgene doldurmak için tam olarak yeterli izler vardır .
Çıktı isteğe bağlı olarak takip eden bir yeni satıra sahip olabilir. Başka hiçbir ekstra (önde, izleyen) boşluk bırakılamaz.
Örnekler
Boyut 1:
G
B . . Y
. . .
P . . O
R
Boyut 2:
G
G G
B B . . . Y Y
B . . . . Y
. . . . .
P . . . . O
P P . . . O O
R R
R
Boyut 4:
G
G G
G G G
G G G G
B B B B . . . . . Y Y Y Y
B B B . . . . . . Y Y Y
B B . . . . . . . Y Y
B . . . . . . . . Y
. . . . . . . . .
P . . . . . . . . O
P P . . . . . . . O O
P P P . . . . . . O O O
P P P P . . . . . O O O O
R R R R
R R R
R R
R
puanlama
Bu kod-golf : bayt cinsinden en kısa kod kazanır.