Rearrange Spaces Between Words

Rearrange Spaces Between Words

- 문제 내용 : space의 갯수를 구하고 word와 word 사이에 동일한 갯수의 space를 위치 시키고, 나머지 space는 마지막에 붙인다.

- 접근 방법

space갯수/word 갯수 - 1

var reorderSpaces = function(text) {
    let space = 0;
    //word 갯수
    for (let i = 0; i < text.length; i++) {
        if(text.charAt(i) == ' ') space++;
    }

    let words = text.split(' ').filter((a) => a != '');

    let spaceNum = words.length - 1;
    if(spaceNum == 0){
        return words[0] + ' '.repeat(space);
    }
    let spaceZone = Math.floor(space / spaceNum);
    let leftZone = space - spaceZone * spaceNum;

    let result = '';
    for (let i = 0; i < words.length-1; i++) {
        result += words[i] + ' '.repeat(spaceZone);
    }
    result += words[words.length - 1] + ' '.repeat(leftZone);

    return result;
};
728x90
반응형

'Problem Solving' 카테고리의 다른 글

Maximum Non Negative Product in a Matrix  (0) 2020.09.20
Split a String Into the Max Number of Unique Substrings  (0) 2020.09.20
Sequential Digits  (0) 2020.09.19
Inorder Successor in BST II  (0) 2020.09.19
Best Time to Buy and Sell Stock  (0) 2020.09.18