Pozitif bir tamsayı N alan (stdin / komut satırı / fonksiyon arg üzerinden) ve eğik çizgilerden çıkarılan N adım uzunluğunda iki boyutlu rasgele bir yürüyüşün dize ile temsilini basan veya döndüren bir program veya işlev yazın : /
\
(artı boşluklar ve boşluk satırları).
2D rastgele bir yürüyüş sonsuz bir tamsayı kafesinin başlangıcında başlar . Daha sonra tekrar tekrar N kez, rastgele bir şekilde bir kardinal yön (yukarı, aşağı, sol, sağ) seçilir ve yürüteç bir yönde bu yönde hareket eder. Ortaya çıkan yol rastgele yürüyüştür.
Burada N = 6 için rastgele bir yürüyüş var.
Bunu eğik çizgilerle çizmek için, temelde her şeyi saat yönünde 45 ° döndürmemiz gerekir. Eksenler, başlangıç ve bitiş noktaları eğik çizgi versiyonunda çizilmez.
/
\
\
/\
Bunun gibi daha karmaşık bir yürüyüş (N = 20, söylemenin bir yolu yok):
Bu olur:
/
/\/ /\
\/\/
/\/
\/
Programınızın bu tür rastgele yürüyüşlerin eğik çizgi sürümlerini oluşturması gerekir. Sen gerekir belli N için programın her koşu neredeyse kesinlikle farklı bir yürüyüş üretecek böylece rastgele yürüyüş alır her yeni bir yön seçin. (Yalancılık iyidir.)
Asla en düşük ve en yüksek eğik çizgilerin üstünde veya altında boş satırlar olmamalıdır (isteğe bağlı bir son satırsonu hariç) ve asla en soldaki ve en sağdaki eğik çizgilerden önce veya sonra boş sütunlar olmamalıdır.
Yani N = 1 için, çıktı her zaman /
ya da \
, ama asla şöyle bir şey değildir:
/
Sondaki boşluklara, en sağdaki eğik çizginin sütununu geçmedikleri sürece izin verilir.
En az bayt içeren gönderim kazanır. İşte kullanışlı bir bayt sayacı.