Bana göre bir kasırga şöyle gözüküyor:
########
#######
######
#####
####
###
##
#
Bu kasırga genişlikle başlar n
ve sonraki her satırda, girişe bağlı olarak bir karakter sol veya sağdan kaldırılır.
Giriş
Girdi, iki benzersiz değerin bir tür listesi (iki benzersiz karakter dizesi de işe yarar) ve başlangıç genişliğini belirtmek için isteğe bağlı bir pozitif tamsayı olacaktır. İsteğe bağlı tamsayı alınmazsa, başlangıç genişliği listenin uzunluğundan 1 büyüktür. Başlangıç genişliği olsun n
.
Bir kasırga nasıl yapılır
Örneğimde, l 1
ve 0
s içerecek şekilde listemi seçiyorum , ancak iki farklı sabit değer veya herhangi iki farklı sabit karakterden oluşan bir dize seçebilirsiniz.
İlk satır n
boşluk olmayan karakterlerden oluşacak ( herhangi bir tutarlı karakter seçebilirsiniz; örneğim #
için seçiyorum ).
Sonra listedeki her numara için, eğer sayı ise 0
, soldaki karakteri kaldırın ve yeni bir satır oluşturun; eğer a ise 1
, doğru karakteri kaldırın ve yeni bir satır oluşturun.
Böylece, yukarıdaki kasırga için çıktı 8, [1, 0, 0, 0, 1, 0, 0]
.
Çıktı
Çıktı, dizgelerin bir listesi, karakter listelerinin bir listesi veya çok satırlı bir dize olabilir. Her satırdaki arkadaki boşluk boşluğuna izin verilir ve sondaki arkadaki yeni satıra izin verilir.
Test Kılıfları
Bu testler başlangıç genişliğini ve kullanım listelerini içerir 1, 0
.
5, [1,0,0,1]
#####
####
###
##
#
10, [1,0,0,1,0,1,0,0,1]
##########
#########
########
#######
######
#####
####
###
##
#
7, [1,1,1,1,1,1]
#######
######
#####
####
###
##
#
100,
[1,0,0,0,0,1,0,0,0,1,1,0,1,0,0,1,0,0,1,0,0,1,1,0,1,1,1,1,0,1,0,1,1,0,0,1,0,1,1,0,0,1,1,1,0,0,1,1,1,1,1,0,0,0,1,1,0,1,0,0,1,1,1,1,1,1,1,1,1,1,0,1,1,0,0,0,0,1,0,0,0,0,1,1,1,1,0,1,0,1,0,0,1,1,0,0,0,0,1]
kurallar
- Standart boşluklar uygulanır
- Bayt cinsinden en kısa kod kazanır! kod golf
- Arka plan boşluk olmak zorunda değildir (bunu daha önce belirtmeyi unuttum).
- Diliniz yalnızca kullanabileceği sayıları (genişlikleri) desteklemeli, ancak tercümanınız daha büyük bir boyutta yeniden yazılmışsa, teorik olarak çalışması gerekir.