본문 바로가기

알고리즘

[BOJ] 10808번 : 알파벳 개수(JAVA)

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

 

10808번: 알파벳 개수

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

www.acmicpc.net

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

public class Main {
    static int[] answer;
    public static void count(char x){
        //System.out.println(x-97);
        answer[x-97]++;
    }
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String input = br.readLine();
        answer = new int[26];
        int len = input.length();
        for(int i=0;i<len;i++){
            char tmp = input.charAt(i);
            count(tmp);
        }

        for(int i=0;i<25;i++){
            System.out.print(answer[i]+" ");
        }
        System.out.print(answer[25]);
    }
}

문자열 문제는 오랜만에 만나면 당황해서 주기적으로 봐줘야할 것 같다.

알파벳에서 97을 빼면 소문자 a~z를 0~25로 바꿀 수 있다.

대문자 A는 65, 소문자 a는 97이라는 것을 잊지말자 !