Given a width and a block of
text containing possible hyphen-
ation points, format it fully-
justified (in monospace).
Tamamen haklı anlamına gelir, sola ve sağa hizalanır ve her bir çizgi uyuncaya kadar sözcükler arasındaki boşluğu artırarak elde edilir.
İlgili:
- Boşluk ekleyerek bir metni yasla
- Metni bir bloğa hizalayın
- Ve bir bakıma bu, Metin İşleme # 1: Heceleme'de (hiç gönderilmemiş gibi görünüyor) bir sonraki adım olarak düşünülebilir .
Giriş
İstediğiniz formatta giriş alabilirsiniz. Size verilecek:
- Hedef genişliği (karakter olarak), 5-100 (dahil) aralığında;
- Muhtemelen tirelenmiş sözcükleri içeren bir metin bloğu. Bu, boşlukla ayrılmış bir dize, bir kelime dizisi veya bir kelime parçası dizisi dizisi (veya istediğiniz diğer veri gösterimleri) olabilir.
Tipik bir giriş olabilir:
Width: 25
Text: There's no bu-si-ne-ss lik-e s-h-o-w busine-ss, n-o bus-iness I know.
Tire'lerin olası tireleme noktalarını, boşluklar ise kelime sınırlarını belirtir. Metnin olası bir alternatif gösterimi:
[["There's"], ["no"], ["bu", "si", "ne", "ss"], ["lik", "e"], (etc.)]
Çıktı
Kelimeler arasına boşluk bırakılmış giriş metni, sütun genişliğinde yeni satırlar ve bunu sütun genişliğine tam olarak yaslamak için seçilen tireleme noktaları. İşlevler için, yeni satır ayırma yerine bir dizi dizgi (her satır için bir tane) döndürülebilir.
Yukarıdaki giriş için olası bir çıkış olabilir:
There's no business like
show business, no bus-
iness I know.
Kelimenin bir sonraki satıra sarıldığını ve ikinci satırın mümkün olduğunca fazla metin içermesini sağlamak için seçildiğini göstermek için tutulan son "bus-iness" in dışındaki tüm tire işaretlerinin kaldırıldığını unutmayın.
kurallar
Her satırda, kelimeler arasındaki boşluk sayısı 1'den fazla değişemez, ancak fazladan boşluk bıraktığınız yer size bağlıdır:
hello hi foo bar <-- not permitted (1,1,5) hello hi foo bar <-- not permitted (2,1,4) hello hi foo bar <-- OK (2,2,3) hello hi foo bar <-- OK (2,3,2) hello hi foo bar <-- OK (3,2,2)
Hiçbir çizgi boşluklarla başlayamaz veya bitemez (boşluklarla biten son satır hariç).
Son satır, her bir sözcük arasında tek boşluk bırakılarak, haklı bırakılmalıdır. İstenirse isteğe bağlı beyaz boşluk / yeni satır izlenebilir, ancak bu gerekli değildir.
Kelimeler AZ, az, 0-9 ve basit noktalama işaretlerinden oluşacaktır (
.,'()&
)Hiçbir kelime parçasının hedef genişliğinden daha uzun olmayacağını ve çizgileri kurallara uygun olarak doldurmanın her zaman mümkün olacağını varsayabilirsiniz (yani, her satırda en az 2 kelime parçası veya satırı dolduracak 1 kelime parçası olacak) mükemmel bir şekilde)
Örneğin, daha önceki satırlardaki kelime karakterlerinin sayısını maksimize eden tireleme noktalarını seçmelisiniz (örneğin, kelimeler satırlarca açikça tüketilmelidir), örneğin:
This is an input stri-ng with hyph-en-at-ion poi-nts. This is an input stri- <-- not permitted ng with hyphenation points. This is an input string with hyph- <-- not permitted enation points. This is an input string with hyphen- <-- OK ation points.
Bayt cinsinden en kısa kod kazanır
Örnekler
Width: 20
Text: The q-uick brown fox ju-mp-s ove-r t-h-e lazy dog.
The quick brown fox
jumps over the lazy
dog.
Width: 32
Text: Given a width and a block of text cont-ain-ing pos-sible hyphen-ation points, for-mat it ful-ly-just-ified (in mono-space).
Given a width and a block of
text containing possible hyphen-
ation points, format it fully-
justified (in monospace).
Width: 80
Text: Pro-gram-ming Puz-zles & Code Golf is a ques-tion and ans-wer site for pro-gram-ming puz-zle enth-usi-asts and code golf-ers. It's built and run by you as part of the St-ack Exch-ange net-work of Q&A sites. With your help, we're work-ing to-g-et-her to build a lib-rary of pro-gram-ming puz-zles and their sol-ut-ions.
Programming Puzzles & Code Golf is a question and answer site for programming
puzzle enthusiasts and code golfers. It's built and run by you as part of the
Stack Exchange network of Q&A sites. With your help, we're working together to
build a library of programming puzzles and their solutions.
Width: 20
Text: Pro-gram-ming Puz-zles & Code Golf is a ques-tion and ans-wer site for pro-gram-ming puz-zle enth-usi-asts and code golf-ers. It's built and run by you as part of the St-ack Exch-ange net-work of Q&A sites. With your help, we're work-ing to-g-et-her to build a lib-rary of pro-gram-ming puz-zles and their sol-ut-ions.
Programming Puzzles
& Code Golf is a
question and answer
site for programming
puzzle enthusiasts
and code golfers.
It's built and run
by you as part of
the Stack Exchange
network of Q&A
sites. With your
help, we're working
together to build a
library of program-
ming puzzles and
their solutions.
Width: 5
Text: a b c d e f g h i j k l mm nn oo p-p qq rr ss t u vv ww x yy z
a b c
d e f
g h i
j k l
mm nn
oo pp
qq rr
ss t
u vv
ww x
yy z
Width: 10
Text: It's the bl-ack be-ast of Araghhhhh-hhh-h-hhh-h-h-h-hh!
It's the
black be-
ast of
Araghhhhh-
hhhhhhhhh-
hhh!
anybod-y
, genişliği 7 ile çıkışa ya seçebilir anybody
veya anybod-\ny
?