알파벳 개수를 카운트 해주기 위해 소문자 알파벳이 개수만큼 int형 배열을 선언 및 초기화 해준다.
입력되는 문자열의 길이만큼 반복문을 돌면서 문자열의 제일 앞글자 인덱스를 확인하면서 (해당 문자-97)를 인덱스로하는 배열에 +1 을 해주면 count할 수 있다.
아스키 코드를 알아야 쉽게 풀 수 있는 문제였다. 대문자 A는 아스키코드로 65, 소문자는 97부터 시작한다는 것을 알아두자.
package BOJ;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class sol10808 {
static String s;
static int[] arr;
static char c;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
s = br.readLine();
arr = new int[26];
for (int i = 0; i < s.length(); i++) {
c = s.charAt(i);
arr[c - 97]++;
}
for (int i = 0; i < 26; i++) {
System.out.print(arr[i] + " ");
}
}
}