Görev
Göreviniz, verilen girdiyi belirli bir boyuttaki bir bloğa hizalayacak tüm programı yazmaktır.
Giriş:
40
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Çıktı:
Lorem ipsum dolor sit amet, consectetur
adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit
in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint
occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim
id est laborum.
<-- note the linebreak
Giriş Ayrıntıları
- Tüm yürütülebilir / yorumlanabilir bir program yazmalısınız.
- Girişin yalnızca yazdırılabilir ASCII karakterleri içerdiğini ve sekme içermediğini varsayabilirsiniz
\t
. - Giriş satır sonları içerebilir. O kadar, bunlar da verilir yoksa
\n
,\r
ya\r\n
bağlı beklediğiniz. Bununla birlikte, tüm girdi boyunca birleşirler. - Giriş STDIN'de veya komut satırı bağımsız değişkenleri olarak verilebilir. İhtiyaçlarınıza uygunsa her ikisini de kullanabilirsiniz (örneğin, komut boyutlarından komut boyutunu oku ve stdin olarak gir). Ancak, girdinin herhangi bir bölümünü programınıza sabit olarak kodlayamazsınız.
- Blok boyutunun geçerli pozitif (
> 0
) sayı olarak verildiğini varsayabilirsiniz . - Girişteki satır kesmesi boşlukla aynı şekilde ele alınır (böylece kelime ayırıcıdır)
- Girdi birden fazla eşzamanlı boşluk içeriyorsa, bunlar tek sayı olarak değerlendirilir.
Çıktı ayrıntıları
- Çıktı, belirli boyutta bir blok halinde biçimlendirilmelidir. Biçimlendirme, kelimeler arasına boşluk ekleyerek yapılır.
- Bir satırdaki kelimeler arasındaki boşluk sayısı, o satır için eşit olmalıdır. Mümkün değilse, soldan başlayarak kelimelerden sonra tek tek ek boşluklar eklenmelidir.
- Sözcük verilen blok boyutundan daha uzunsa, tek bir satırda tek başına duracaktır (ve blok boyutunu aşacaktır).
- Çıktıda yalnızca bir kelime olması gerekiyorsa, sola hizalanır.
- Çıktının son satırı, kelimeler arasında yalnızca bir boşluk olacak şekilde sola hizalanmalıdır. Çıktının son satırı, sondaki satır sonu ile bitmelidir.
Bir süre sonra en az bayt ile cevap kazanır.
Ek bilgiye ihtiyacınız varsa, bir yorum bırakın.
Test senaryoları
Input:
10
Lorem ipsum dolor sit amet,
consectetur adipiscing elit, sed do eiusmod tempor
Output:
Lorem
ipsum
dolor sit
amet,
consectetur
adipiscing
elit, sed
do eiusmod
tempor
Input:
20
Lorem ipsum
dolor sit amet,
Output:
Lorem ipsum dolor
sit amet,
Input:
1
Lorem ipsum dolor sit amet
Output:
Lorem
ipsum
dolor
sit
amet
İlişkili. (Sonunda , otomatik olarak silinen tipografi etiketim için ikinci bir zorluk .))
—
Martin Ender
@ MartinBüttner Böyle bir etiketin var olduğunu bilmiyordum.
—
Zereges
@ Vɪʜᴀɴ Tüm yürütülebilir / yorumlanabilir bir program yazmanız gerekir.
—
Dennis
Yinelenen bir boşluk ekleyerek metni yaslama .
—
pppery
@ppperry İlginç, bazı nedenlerden dolayı arama becerilerimden kaçınıldı
—
Zereges