문제
내가 작성한 정답
import java.util.Arrays;
class Solution {
public int solution(String[] strArr) {
int[] arr = new int[31];
for(String s: strArr){
arr[s.length()] += 1;
}
return Arrays.stream(arr).max().orElse(0);
}
}
import java.util.*;
class Solution {
public int solution(String[] strArr) {
Map<Integer,Integer> map = new HashMap<>();
for(String s:strArr){
map.put(s.length(), map.getOrDefault(s.length(),0)+1);
}
int m = 0;
for(Integer i : map.values()){
if(i>m) m=i;
}
return m;
}
}다른 사람들의 정답
class Solution {
public int solution(String[] strArr) {
int answer = 0;
int[] lengArr = new int[31];
for(int i=0; i<strArr.length; i++) {
lengArr[strArr[i].length()]++;
}
for(int i=0; i<=30; i++) {
answer = Math.max(answer, lengArr[i]);
}
return answer;
}
}
import java.util.*;
import java.util.stream.Collectors;
class Solution {
public int solution(String[] strArr) {
return Arrays.stream(strArr).collect(Collectors.groupingBy(String::length)).values().stream().max(Comparator.comparingInt(List::size)).orElse(Collections.emptyList()).size();
}
}
Share article