https://www.acmicpc.net/problem/1157
[풀이]
단어를 구분할 때 대문자와 소문자를 구분하지 않기 때문에 입력받는 문자열을 모두 대문자로 변환하였다. 이후, arr이라는 int배열을 만든 후, 알파벳 철자에 맞는 값에 +1을 했다. 만약 baaa를 입력받았으면 배열 a의 위치, 즉 arr[0]의 값은 3이 된다. 이 arr 배열을 통해서 결과값을 얻을 수 있다.
[코드]
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Locale;
class Main {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
int[] arr = new int[26];
int max_value = -1;
char result = '?';
String input = bufferedReader.readLine().toUpperCase(Locale.ROOT);
for (int i = 0; i < input.length(); i++) {
arr[input.charAt(i) - 'A']++;
}
for (int i = 0; i < arr.length; i++) {
if (arr[i] > max_value) {
max_value = arr[i];
result = (char) (i + 65);
} else if (arr[i] == max_value) {
result = '?';
}
}
System.out.println(result);
}
}
'Algorithm > 백준' 카테고리의 다른 글
백준 9375번 : 패션왕 신해빈(Java) (0) | 2021.07.27 |
---|---|
백준 9935번 : 문자열 폭발(Java) (0) | 2021.07.26 |
백준 2012번 : 등수 매기기(Java) (0) | 2021.07.23 |
백준 1927번 : 최소 힙(Java) (0) | 2021.07.22 |
프로그래머스 : 숨바꼭질(Java) (0) | 2021.07.21 |