Yeni başlayanlar için yeterli (yarı) kolay zorluğumuz yok. Gittikçe daha kolay olanlar zaten alındı. Bu yüzden yeni başlayanlar tarafından elde edilebilecek bir şey bulmaya çalıştım, ancak bu bir kopya değil.
Giriş:
İşletim sisteminizin yeni satırıyla (yani \r\n
) ayrılmış tek bir dize
veya birden çok dizeye sahip bir dizi.
Çıktı - Merdivenler :
Alfabetik olmayan ve sayısal olmayan tüm sembolleri kaldırın. Yani geriye kalan tek şey [A-Za-z0-9]
. Ve sonra 'bir merdiven inşa et'; temelde uzunlukları en küçük en üstte ve en geniş altta olacak şekilde sipariş edin.
Zorluk kuralları:
- İki dize eşit uzunlukta olduğunda, bunları büyük bir dize olarak birleştiririz (sıra önemli değildir, bu nedenle hangisini tercih ederseniz edin, ilkinden sonuncuya veya sondan ilke olabilir).
- Yukarıdaki kural, birleştirilen dizeler tekrar eşit uzunlukta olduğunda yığınlanabilir (bkz. Test örneği 2).
Genel kurallar:
- Giriş STDIN'dir ve yalnızca ASCII karakterleri içerir. Ve çıktı STDOUT.
- Çıkış durumu giriş ile aynı olmalıdır.
Her gönderim yalnızca bir yöntem / işlev değil, derleyebilen ve çalıştırabilen tam bir program olmalıdır.EDIT: Oldukça yeniyim, bu yüzden tam bir programı kendim tercih etsem de, belki de varsayılanı bundan sonra kullanmak daha iyidir . Zaten tam bir program yayınlayan herkes için üzgünüm. Düzenlemek için çekinmeyin, bir dahaki sefere yazının ortasında meydan okumayı değiştirmemeye çalışacağım.- Bu kod golf , bu yüzden bayttaki en kısa cevap kazanır. Muhtemelen bir yıl sonra en kısa cevabı kabul ediyorum.
Kod-golf cevaplarının, C # ve benzerleri gibi kodsuz golf dillerini yayınlamaktan vazgeçmesine izin vermeyin! Herhangi bir programlama dili için en kısa cevabı bulmaya çalışın. - Bu sorudan daha yeni dilleri kullanmaktan çekinmeyin.
Test senaryoları:
Giriş 1:
This is a sample text,
that you will have to use to build stairs.
The wood may be of excellent quality,
or pretty crappy almost falling apart and filled with termites.
Bla bla bla - some more text
Ok, that will do
Çıkış 1:
Okthatwilldo
Thisisasampletext
Blablablasomemoretext
Thewoodmaybeofexcellentquality
thatyouwillhavetousetobuildstairs
orprettycrappyalmostfallingapartandfilledwithtermites
Giriş 2:
A
small
one
that
contains
equal
length
strings
for
the
special
rule
Çıkış 2:
A Or alternatively: A
length length
oneforthe theforone
smallequal equalsmall
stringsspecial specialstrings
thatrulecontains containsrulethat
Adım 2'de açıklanmıştır:
Uzunlukta ilk sipariş:
A
one
for
the
that
rule
small
equal
length
strings
special
contains
İlk birleştirme:
A
oneforthe
thatrule
smallequal
length
stringsspecial
contains
Uzunluk ikinci sipariş:
A
length
thatrule
contains
oneforthe
smallequal
stringsspecial
İkinci birleşme:
A
length
thatrulecontains
oneforthe
smallequal
stringsspecial
Uzunluk üçüncü sipariş:
A
length
oneforthe
smallequal
stringsspecial
thatrulecontains
Giriş 3:
Test,
test.
This
is
a
test.
Çıkış 3:
a Or alternatively: a
is is
TesttestThistest testThistestTest
Giriş 4:
a
bc
d!
123
Çıkış 4:
123 Or alternatively: 123
adbc dabc
contains
çıkış 2'de olması gerekmiyorthatrule