문제 설명

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

 

10808번: 알파벳 개수

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

www.acmicpc.net

알파벳 소문자로만 이루어진 단어가 주어짐

각 알파벳이 단어에 몇 개가 포함되어 있는지 구하기

 

문제 풀이법

한 단어의 글자수 만큼 for문을 돌면서 26개의 크기로 이루어진 배열의 자신의 알파벳 인덱스에 + 1을 함

 

소스 코드

#include <iostream>

using namespace std;

int main()
{
    int arr[26] = { 0 };
    string str;
    
    getline(cin, str);
    
    for (int i = 0; i < str.size(); i++)
    {
        arr[str[i] - 'a']++;
    }
    
    for (int i = 0; i < 26; i++)
    {
        printf("%d ", arr[i]);
    }
    return 0;
}
복사했습니다!