728x90
- 후보 A, B, C, D, E 중 당선된 학급 회장 반환
(입력)
ACBBDEABCDDBC
CCBBABEBCD
(출력)
# int[5] 배열 만들어서 득표수 ++
public class Main {
private char solution(String s) {
char answer = 'A';
int[] vote = new int[5];
for (int i=0; i<s.length(); i++) {
vote[(int)s.charAt(i)-65]++;
}
int max = vote[0];
for(int i=1; i<vote.length; i++) {
if(vote[i]>max) {
max = vote[i];
answer = (char) (65+i);
}
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
System.out.println(T.solution("ACBBDEABCDDBC")); // B
System.out.println(T.solution("CCBBABEBCD")); // B
}
}
# HashMap 사용
import java.util.HashMap;
public class Main {
private char solution(String s) {
char answer = ' ';
HashMap<Character, Integer> map = new HashMap<>();
for(char c : s.toCharArray()) {
map.put(c, map.getOrDefault(c, 0)+1);
}
int max = Integer.MIN_VALUE;
for(char key : map.keySet()) {
if(map.get(key)>max) {
max = map.get(key);
answer=key;
}
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
System.out.println(T.solution("ACBBDEABCDDBC")); // B
System.out.println(T.solution("CCBBABEBCD")); // B
}
}
- getOrDefault(Object key, V DefaultValue) : 찾는 키가 존재하면 찾는 키의 값을 반환하고 없으면 기본 값을 반환
# 휴..
- 파이썬 딕셔너리처럼 어떻게 쓰나 했더니 HashMap을 사용하는거였군..
반응형
'전.java' 카테고리의 다른 글
[Java] 한번 사용한 최초 문자 (0) | 2023.01.27 |
---|---|
2023.01.27(금) (0) | 2023.01.27 |
[Java] 특정 문자 뒤집기 (0) | 2023.01.27 |
[Java] 회문 문자열 2 (0) | 2023.01.27 |
[Java] 회문 문자열 (0) | 2023.01.27 |