Bu sorunun amacı için kıvrımlı bir eğri, soldan sağa doğru genel yönü takip eden, ancak n + 1'i 90 derece sola döndürür ve n + 1 sağa döner (n> 0 için).
Aslında kıvrımın kendisinin n
bölümleri olacaktır .
Dönüşler ile gösterilir +
.
Kıvrımların genişliği (iki arasındaki mesafe +
) ufukta ( ---
) 3 ve dikeyde ( |
) 1'dir
Tek segmentler, 1'den 5'e kadar n boyutlarında kıvrımlı bir eğri içerir:
+-------------------+
| |
+---------------+ | +-----------+ |
| | | | | |
+-----------+ | +-------+ | | | +---+ | |
| | | | | | | | | | | |
+-------+ | +---+ | | +---+ | | | +---+ | | |
| | | | | | | | | | | | | |
+---+ +---+ | +---+ | | +-------+ | | +-----------+ | |
| | 1 | | 2 | | 3 | | 4 | | 5
---+ +-------+ +-----------+ +---------------+ +-------------------+ +
Meydan okuma:
Verilen iki pozitif sayı n
ve boyut olarak kıvrımlı bir eğrinin segmentlerini m
çizin . Tam bir program veya işlev yazabilirsiniz.m
n
Giriş:
n
> 0 Eğrinin boyutu
m
> 0 Çizilecek segment sayısı
Çıktı:
Menderes eğrisinin ASCII gösterimi.
Örnekler:
n = 3
m = 2
+-----------+ +-----------+
| | | |
| +---+ | | +---+ |
| | | | | | | |
+---+ | | +---+ | |
| | | |
-----------+ +-----------+ +
n = 2
m = 5
+-------+ +-------+ +-------+ +-------+ +-------+
| | | | | | | | | |
+---+ | +---+ | +---+ | +---+ | +---+ |
| | | | | | | | | |
-------+ +-------+ +-------+ +-------+ +-------+ +
n = 4
m = 4
+---------------+ +---------------+ +---------------+ +---------------+
| | | | | | | |
| +-------+ | | +-------+ | | +-------+ | | +-------+ |
| | | | | | | | | | | | | | | |
| +---+ | | | +---+ | | | +---+ | | | +---+ | |
| | | | | | | | | | | | | | | |
+-------+ | | +-------+ | | +-------+ | | +-------+ | |
| | | | | | | |
---------------+ +---------------+ +---------------+ +---------------+ +
Kazanma kriterleri:
Bu kod golf , bu nedenle her dilde bayt cinsinden en kısa kod kazanır. Bunu yapmak için zamanınız varsa lütfen kodunuzu açıklayın.
n
Sola dönüş değil mi?
n+1
örneklere bakarken, özellikle tek segmentler arasında ..