개발/알고리즘(코딩테스트)

프로그래머스, 자바스크립트) 문자열 묶기

빔네모 2024. 1. 15. 14:27

문제

https://school.programmers.co.kr/learn/courses/30/lessons/181855

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

풀이

배열을 돌면서 객체를 만든다.

객체의 키값은 문자열의 길이, 그리고 중복된 키값을 가질 경우 해당 값을 + 1 해준다.

출력하면,, { '1': 2, '2': 2, '3': 1 } 이런식으로 얻을 수 있다. value가 가장 높은 값을 찾으면 되므로 max를 이용해 찾아준다.

function solution(strArr) {
    const obj ={}
    strArr.forEach((x,i) => {
        obj[x.length] = obj[x.length] + 1 || 1 
    })
    return Math.max(...Object.values(obj))
}