Java/Java 알고리즘

백준 2386번 도비의 영어 공부 JAVA 구현해보기

kimc 2022. 2. 19. 11:34

```

백준 2386번 도비의 영어 공부 JAVA 구현해보기

```

이번 글을 통해 배워갈 내용

  1.  백준 2386호 번 풀이

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

 

2386번: 도비의 영어 공부

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

www.acmicpc.net

 

 

 

백준 2386번 도비의 영어공부는

난이도 브론즈 등급의 문제로서

 

입력의 각줄 마다

첫 번째 문자가 몇 번 나오는지 카운트해서 출력해주면 되는 문제입니다.

#이 나오면 종료합니다.


30분 정도 위에 링크를 방문하셔서 풀어보시고

안 풀리시는 경우에만 아래 해답을 봐주시면 감사하겠습니다.


각 줄을 입력받고

첫 번째 단어를 분류해서

나머지 문자열에 첫 번째 단어가 몇 번 나오는지 카운트해주면 됩니다.

 

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

public class Main {
    final static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

    public static void main(String[] args) throws IOException {


        while (true) {
            String inputStr = br.readLine();
            if (inputStr.equals("#")) {
                break;
            }
            StringTokenizer st = new StringTokenizer(inputStr, " ");
            char givenLetter = st.nextToken().charAt(0);

            String str = "";

            while (st.hasMoreTokens()) {
                str += st.nextToken();
            }

            System.out.println(givenLetter + " " + countCharInStr(givenLetter, str));
        }
    }

    private static int countCharInStr(char givenLetter, String str) {
        int count = 0;
        for (char letter : str.toLowerCase().toCharArray()) {
            if (letter == givenLetter) {
                count++;
            }
        }
        return count;
    }
}

 

 

읽어주셔서 감사합니다

 

무엇인가 얻어가셨기를 바라며

 

오늘도 즐거운 코딩하시길 바랍니다 ~ :)

 


 

728x90