1
class Solution:
2
def fullJustify(self, words: List[str], maxwidth: int) -> List[str]:
3
curr = 0
4
last = []
5
res = []
6
for i in words:
7
if curr + len(i) + len(res) <= maxwidth:
8
curr += len(i)
9
res.append(i)
10
else:
11
last.append(res)
12
curr = len(i)
13
res = [i]
14
last.append(res)
15
ans = []
16
for idx, row in enumerate(last):
17
x = maxwidth - len("".join(row))
18
t = len(row) - 1
19
if t == 0:
20
ans.append(row[0] + " " * (x))
21
elif idx != len(last) - 1:
22
spaces = x // t
23
rem = x % t
24
res = row[0]
25
for i in row[1:]:
26
temp = spaces
27
if rem:
28
temp += 1
29
rem -= 1
30
res = res + " " * temp + i
31
# print(res, temp)
32
ans.append(res)
33
else:
34
res = row[0]
35
for i in row[1:]:
36
res = res + " " + i
37
res = res + " " * (maxwidth - len(res))
38
ans.append(res)
39

40
return ans

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0