공부하기/백준

[Java] 백준 풀기 2386 - 도비의 영어 공부

XEV 2024. 1. 11. 23:32

자바 백준 2386번

브론즈 2

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

 

2386번: 도비의 영어 공부

출력의 각 줄은 입력으로 주어진 소문자와 그 소문자 알파벳이 나타난 횟수로 이루어진다. 이때 문장에서 해당 알파벳이 소문자로 나타나던 대문자로 나타나던 모두 세야 한다.

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 구현, 문자열, 브루트포스

 

 

 

 

 

코드 보기

import java.util.Scanner;

public class Main {
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        while (true) {
            // 알파벳 입력
            char target = sc.next().charAt(0);
            
            // 입력의 마지막인 '#'이면 반복 종료
            if (target == '#') {
                break;
            }
            
            // 문장 입력
            String sentence = sc.nextLine();
            
            // 문장을 소문자로 변환
            sentence = sentence.toLowerCase();
            
            // 알파벳이 나타난 횟수 계산
            int count = countOccurrences(target, sentence);
            
            // 결과 출력
            System.out.println(target + " " + count);
        }
    }
    
    // 알파벳이 나타난 횟수 계산하는 메소드
    private static int countOccurrences(char target, String sentence) {
        int count = 0;
        // 문장을 돌면서 알파벳이 나타날 때마다 카운트 증가
        for (char c : sentence.toCharArray()) {
            if (c == target) {
                count++;
            }
        }
        // 최종 결과 반환
        return count;
    }
    
}