알쓸코지
article thumbnail

🔗 문제

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

 

프로그래머스

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

programmers.co.kr

 

문제 설명

문자열 배열 strArr이 주어집니다. strArr의 원소들을 길이가 같은 문자열들끼리 그룹으로 묶었을 때 가장 개수가 많은 그룹의 크기를 return 하는 solution 함수를 완성해 주세요.

제한사항

  • 1 ≤ strArr의 길이 ≤ 100,000
    • 1 ≤ strArr의 원소의 길이 ≤ 30
    • strArr의 원소들은 알파벳 소문자로 이루어진 문자열입니다.

입출력 예

strArr result
["a","bc","d","efg","hi"] 2

 

💻 Code

from collections import defaultdict


def solution(strArr):
    count_dict = defaultdict(int)

    for s in strArr:
        count_dict[len(s)] += 1

    return max(count_dict.values())
  • defaultdict을 이용하여 '문자열 길이': 등장 횟수 형태로 딕셔너리를 만든다.
  • max(count_dict.values())를 이용하여 등장 횟수의 최댓값을 리턴한다.

profile

알쓸코지

@chocoji

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!