Problem of the day
Let the given sentence be: [ “what”, “must”, “be”, “shall”, “be.”]
And L=12.
The justified output will be :
[ “what must be”
“Shall be.” ]
Note that the last line is only left justified.
The first line of input contains an integer ‘T’ representing the number of test cases. Then the test cases follow.
The first line of each test case contains a single integer ‘n’ denoting the number of words in the sentence.
The second line of each test case contains space separated strings denoting the word in the sentence. Note that no word has space in between it.
The third line of each test case contains the integer ‘L’ denoting the number of characters in each line in the justified output
For each test case, return an array of strings denoting the justified output of the given sentence.
The output for each test case is in a separate line.
1. You do not need to print anything; it has already been taken care of.
2. The words do not contain whitespaces.
3. It is guaranteed that L is always greater than the number of characters in any of the given words in the given array ‘words’
1 <= T <= 100
1 <= words.length <= 300
1 <= words[i].length <= 20
words[i] consists of only English letters and symbols.
1 <=L <= 100
words[i].length <= L
Where ‘T’ is the number of test cases, words.length denotes the number of words in the array and words[i].length denotes the number of alphabets in each word
L denotes the number of character in each line of the result.
Time Limit: 1 sec
2
7
This is an example of text justification.
16
3
I like apple
6
This is an
example of text
justification.
I like
apple
For the first test case,
We have 7 words in the sentence and we can have 16 characters in each line. So we will have the output as given above.
In each line we need 16 characters, we see that the first 3 words have 4+2+2 =8 characters and add 2 gaps. I.e 10 characters. now if we take one more word i.e example, we exceed the total number of characters in the line so we can take only 3 characters. We have 8 characters and 8 spaces. Which need to be distributed between 2 gaps. So each gap will have 4 spaces.
For the second test case,
We have 3 words in the sentence and 6 characters in each line. So we will have output as given above
2
9
When there is a will there is a way
10
4
Coding ninjas is great
10
When there
is a will
there is a
way
Coding
ninjas is
great