
아래는 프로그래머스에서 제공한 문제 설명입니다.
문자열 배열 strArr이 주어집니다. strArr의 원소들을 길이가 같은 문자열들끼리 그룹으로 묶었을 때 가장 개수가 많은 그룹의 크기를 return 하는 solution 함수를 완성해 주세요.
strArr의 길이 ≤ 100,000strArr의 원소의 길이 ≤ 30strArr의 원소들은 알파벳 소문자로 이루어진 문자열입니다.using System;
using System.Linq;
public class Solution {
public int solution(string[] strArr) {
int answer = 0;
int[] counts = new int[31];
foreach(var str in strArr)
{
counts[str.Length]++;
}
answer = counts.Max();
return answer;
}
}
제한사항 제대로 안보고 이중 반복문으로 구현했다가 시간초과에 혼나버렸다.
제한사항에 있는 strArr 원소의 길이 < 30을 보고
int[] counts = new int[31];
배열을 초기화하여 사용제한사항을 잘 보자.