본문 바로가기
Baekjoon Online Judge

[BOJ] 백준 1157번: 단어 공부 (Java)

by 프로그래 밍구 2023. 3. 19.

문제링크

https://www.acmicpc.net/problem/1157

 

1157번: 단어 공부

알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.

www.acmicpc.net


나의코드

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        
        int[] arr = new int[26];
        String word = br.readLine();
        
        for(int i = 0; i < word.length(); i++){
            if('a' <= word.charAt(i) && word.charAt(i) <= 'z'){
                arr[word.charAt(i) - 'a']++;
            } else{
                arr[word.charAt(i) - 'A']++;
            }
        }
        int max = -1;
        char ch = '?';
        for(int i = 0; i < 26; i++){
            if(arr[i] > max){
                max = arr[i];
                ch = (char)(i + 65);
            } else if(arr[i] == max){
                ch = '?';
            }           
        }
        System.out.print(ch);
    }
}

 

댓글