Sorun Açıklaması
Izgara üzerinde bir kaplumbağa olduğunu hayal et. Sen iki sayıyı verilen konum f ve b ve doğuya bakan ediyoruz. Aşağıdaki kurallara göre, karşılaştığınız hücrelerin her birini sayarak ızgara boyunca bir yürüyüş gerçekleştirirsiniz:
- Varsayılan olarak, sayımı içinde bulunduğunuz hücreye yazıp ileriye doğru yürüyün.
- Sayı f ile bölünebilirse ,
F
bulunduğunuz hücreye yazıp sağa dönün, sonra ileriye doğru yürüyün. - Sayı b ile bölünebilir ise ,
B
bulunduğunuz hücreye yazın, sonra sola dönün, sonra ileri yürüyün. - Sayımı ikisi tarafından bölünebilir ise f ve b , yazdığınız
FB
sonra ileriye yürümek, sen geldin hücreye. - Daha önce bulunduğunuz bir kareye ulaşırsanız, durursunuz.
Örneğin, f = 3 ve b = 5 kullanarak bu kurallara uymak, şunun gibi bir model üretecektir:
F 28 29 FB 1 2 F
26 4
F B B F
23 7
22 8
F B B F
19 11
F 17 16 FB 14 13 F
Meydan okuma
İki sayıyı girdi olarak kabul eden, f ve b'ye karşılık gelen ve yukarıdaki kurallar tarafından verilen bu sayıların modelini çıktı olarak üreten bir program veya işlev yazın .
Biçimlendirme gereksinimleri:
- Her hücre iki karakter genişliğindedir
- Hücre içeriği bu iki karakter içinde sağa hizalanır
- Aynı satırdaki hücreler bir boşlukla sınırlandırılır
- İlk hücre sütunu boş olmayan bir hücre içermelidir
- Tüm satırlar boş olmayan hücreler içermelidir
- İzleyen beyaz boşluk gerekli değil, ancak izin veriliyor
- Ancak, her satırın toplam genişliği boş olmayan sütun sayısının 3 katını geçmemelidir
Kodunuz, sağlanan test durumları için çalışmalıdır.
Standart boşluklara izin verilmez.
Bu kod golf; bayt cinsinden en kısa cevap kazanır.
Test durumları
(f = 3, b = 5 durum nezaket kolaylığı olarak burada tekrarlanmıştır).
f=3, b=5 ->
F 28 29 FB 1 2 F
26 4
F B B F
23 7
22 8
F B B F
19 11
F 17 16 FB 14 13 F
f=4, b=10 ->
F 25 26 27 F
23 29
22 1 2 3 F
21 5
FB 6
19 7
18 B 9 F
17 11
F 15 14 13 F
f=3, b=11 ->
F 16 17 F
14 19
13 1 2 F
F B 4
10 5
F 8 7 F
f=5, b=9 ->
F 41 42 43 44 1 2 3 4 F
39 6
38 7
37 8
F B B F
34 11
33 12
32 13
31 14
F 29 28 B B 17 16 F
26 19
F 24 23 22 21 F
f=5, b=13 ->
F 31 32 33 34 F
29 36
28 1 2 3 4 F
27 6
F B 7
24 8
23 9
22 B 12 11 F
21 14
F 19 18 17 16 F