Submission details
Task:Text Alignment
Sender:Dereden
Submission time:2025-11-26 17:25:59 +0200
Language:Python3 (PyPy3)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.04 sdetails
#2ACCEPTED0.04 sdetails
#3ACCEPTED0.04 sdetails
#4ACCEPTED0.04 sdetails
#5ACCEPTED0.04 sdetails
#6ACCEPTED0.04 sdetails
#7ACCEPTED0.04 sdetails
#8ACCEPTED0.04 sdetails
#9ACCEPTED0.04 sdetails
#10ACCEPTED0.04 sdetails
#11ACCEPTED0.05 sdetails
#12ACCEPTED0.05 sdetails
#13ACCEPTED0.05 sdetails

Code

text = input()
words = text.split()

lines = []
currentLine = []
currentLength = 0

for word in words:
    wordLen = len(word)
    requiredLength = currentLength + wordLen + len(currentLine)
    if not currentLine or requiredLength <= 50:
        currentLine.append(word)
        currentLength += wordLen
    else:
        lines.append(currentLine)
        currentLine = [word]
        currentLength = wordLen
if currentLine:
    lines.append(currentLine)

for line in lines:
    totalLength = sum(len(word) for word in line)
    spacesNeeded = 50 - totalLength
    gaps = len(line) - 1
    baseSpaces = spacesNeeded // gaps
    extraSpaces = spacesNeeded % gaps
    result = []
    for i, word in enumerate(line):
        result.append(word)
        if i < gaps:
            spaces = baseSpaces + (1 if i < extraSpaces else 0)
            result.append(' ' * spaces)
    print(''.join(result))

Test details

Test 1

Verdict: ACCEPTED

input
zsyadhzdg ke irkyowki nflwfanr...

correct output
zsyadhzdg                     ...

user output
zsyadhzdg      ke      irkyowk...

Test 2

Verdict: ACCEPTED

input
eayoylmki efsqdhm qqvnrd npesu...

correct output
eayoylmki                     ...

user output
eayoylmki      efsqdhm      qq...

Test 3

Verdict: ACCEPTED

input
bsvhdnoxlxad f bclsa llq hjrmp...

correct output
bsvhdnoxlxad                  ...

user output
bsvhdnoxlxad f bclsa llq hjrmp...

Test 4

Verdict: ACCEPTED

input
xoezwspspfdzfasgxlqu f wjzpekp...

correct output
xoezwspspfdzfasgxlqu          ...

user output
xoezwspspfdzfasgxlqu      f   ...

Test 5

Verdict: ACCEPTED

input
bwvfj zmcpktjnmhzevcqtvlg twch...

correct output
bwvfj                         ...

user output
bwvfj  zmcpktjnmhzevcqtvlg  tw...

Test 6

Verdict: ACCEPTED

input
yifvbbjczpcnpknimq lttkngpeqsz...

correct output
yifvbbjczpcnpknimq            ...

user output
yifvbbjczpcnpknimq            ...

Test 7

Verdict: ACCEPTED

input
fu lzslzio ncbkga nrwuijkbrh x...

correct output
fu                            ...

user output
fu  lzslzio ncbkga nrwuijkbrh ...

Test 8

Verdict: ACCEPTED

input
azgwjnvgkapltkknwm odostksvqal...

correct output
azgwjnvgkapltkknwm            ...

user output
azgwjnvgkapltkknwm    odostksv...

Test 9

Verdict: ACCEPTED

input
j mmadidafwkd dckim iwjy bzsso...

correct output
j                             ...

user output
j    mmadidafwkd    dckim   iw...

Test 10

Verdict: ACCEPTED

input
barm sykc faxmvycwxs cnxuwpetq...

correct output
barm                          ...

user output
barm      sykc      faxmvycwxs...

Test 11

Verdict: ACCEPTED

input
ltwg ns j axhacysdjhrpzymwxae ...

correct output
ltwg                          ...

user output
ltwg  ns  j  axhacysdjhrpzymwx...

Test 12

Verdict: ACCEPTED

input
pgwvxzeztltppuuq siarhxbs mjmr...

correct output
pgwvxzeztltppuuq              ...

user output
pgwvxzeztltppuuq    siarhxbs  ...

Test 13

Verdict: ACCEPTED

input
xurwjadifyf iijoofrunig zadrff...

correct output
xurwjadifyf                   ...

user output
xurwjadifyf         iijoofruni...