SQL Study/Programmers

프로그래머스[Lv.0] 문자열 묶기

choidawon 2023. 10. 10. 18:26

문제 설명

strArr의 원소들을 길이가 같은 문자열들끼리 그룹으로 묶었을때 가장 개수가 많은 그룹의 크기를 return

 

입출력 예

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

 

문자열 길이 문자열 목록 개수
1 ["a", "d"] 2
2 ["bc", "hi"] 2
3 ["efg"] 1

2를 리턴

코드 설명

a 리스트를 생성하고, 초기에 길이가 31인 리스트를 생성하며, 모든 원소를 0으로 초기화

0번 인덱스는 문자열 길이 0을 나타내고, 1번 인덱스는 문자열 길이 1

len(x)를 사용하여 현재 문자열 x의 길이를 계산합니다.

a[len(x)]를 1 증가시켜 해당 길이의 카운트를 증가시킵니다.

이렇게 함으로써 각 길이별로 등장한 횟수를 세고 저장

max(a)를 호출하여 a 리스트 중에서 가장 큰 값을 찾아 반환

코드

def solution(strArr):
    a=[0]*31
    for x in strArr: a[len(x)]+=1
    return max(a)