본문 바로가기

Android ᙏ̤̫͚/차근차근 JAVA

[백준 10808번] 알파벳 개수

 

www.acmicpc.net/problem/10808

 

10808번: 알파벳 개수

단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다.

www.acmicpc.net

 

[문제]

알파벳 소문자로만 이루어진 단어 S가 주어진다. 각 알파벳이 단어에 몇 개가 포함되어 있는지 구하는 프로그램을 작성하시오.

 

<알고리즘 분류> 구현, 문자열

 

[input]

첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다.

[output]

단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다.

 


 

 


 

[풀이 방법]

- Scanner 사용

  1. 알파벳 개수를 카운팅할 배열 alphabetCount 생성하여 0으로 초기화

  2. 문자열 입력받아 변수 S에 저장

  3. 각 문자가 등장하면 해당 인덱스를 찾아가 count 증가시킴

  4. 배열 alphabetCount의 값을 공백으로 구분하여 출력

 

- BufferedReader+BufferedWriter 사용

  1. 알파벳 개수를 카운팅할 배열 alphabetCount 생성하여 0으로 초기화

  2. 문자열 입력받아 변수 S에 저장

  3. S.charAt(index) 사용하여 각 문자들을 찾아가며 등장하면 해당 인덱스를 찾아가 count 증가시킴

  4. 배열 alphabetCount의 값을 공백으로 구분하여 출력

  5. bw.write(..)와 bw.flush( ) 활용하여 출력

 

 


 

성공 코드 - Scanner 사용

 

성공 코드 - BufferedReader+BufferedWriter 사용