Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static String[] textJustification(String[] words, int l) {
- String[] result = new String[151];
- Arrays.fill(result, "");
- int totalLen = 0;
- for (int i = 0; i < words.length; i++) {
- totalLen += words[i].length();
- }
- int k = 0;
- for (int i = 0; i < words.length; i++) {
- if (l == words[i].length()) {
- if (!result[k].isEmpty()) {
- k++;
- }
- result[k] = words[i];
- continue;
- }
- while (!(l >= (result[k].length() + 1 + words[i].length()))) {
- k++;
- }
- if (result[k].isEmpty()) {
- result[k] = words[i];
- } else {
- result[k] += " " + words[i];
- }
- }
- result = Arrays.copyOfRange(result, 0, k + 1);
- for (int i = 0; i < result.length; i++) {
- int numWords = 0;
- for (int p = 0; p < result[i].length(); p++) {
- if (result[i].charAt(p) == ' ') {
- numWords++;
- }
- }
- if (numWords == 0) {
- while (result[i].length() < l) {
- result[i] += " ";
- }
- }
- for (int f = 0; f < (l - result[i].length()); f++) {
- for (int s = 0; s < result[i].length(); s++) {
- if (result[i].charAt(s) == ' ') {
- result[i] = result[i].substring(0, s) + " " + result[i].substring(s, result[i].length());
- s++;
- }
- if (result[i].length() >= l) {
- f = l;
- break;
- }
- }
- }
- }
- return result;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement