Algorithm/문제
31. 학급 회장(해쉬)
챛채
2023. 8. 16. 15:39
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public char solution(int n, String s) {
char answer=' ';
//해쉬 맵 선언
HashMap<Character, Integer> map = new HashMap<>();
for (char x: s.toCharArray()){
map.put(x, map.getOrDefault(x,0)+1); //x라는 키의 value값을 가져오되 x가 없으면 0리턴(카운팅할 떄 중요)
}
int max = Integer.MIN_VALUE;
for(char key : map.keySet()) {//map에 존재하는 키 탐색
// System.out.println(x + " " + map.get(x));
if(map.get(key)>max){
max = map.get(key);
answer = key;
}
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt(); //반 학생 수
String str =kb.next();
System.out.println(T.solution(n, str));
}
}
getOrDefault
- V getOrDefault(Object key, Object defaultValue)
- 찾는 key가 존재하면 찾는 key의 value를 반환하고 없거나 null이라면 default값을 반환한다.