알파벳 소문자로만 이루어진 단어 S가 주어진다. 각 알파벳이 단어에 몇 개가 포함되어 있는지 구하는 프로그램을 작성하시오.
첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다.
출처: https://www.w3resource.com/cpp-exercises/for-loop/cpp-for-loop-exercise-61.php
⚠️배열을 선언 할 때 = {}를 해주어야 되는 이유는 그냥 선언을 하고 아무 값도 안주어지면 0이 아닐 수도 있기 때문에 저렇게 선언함으로서 모든 값을 0으로 초기화를 해줄 수 있다. 참고로 = {0}은 제일 첫번째 인덱스의 값만 0이 되므로 ={}를 사용하자.
#include <iostream>
using namespace std;
int main(){
string s;
int alphabet[26] = {};
//입력
getline(cin, s);
//알파벳에 맞는 인덱스에 개수 +1
for(int i = 0; i < s.size(); i++){
alphabet[s[i]-'a']++;
}
//출력
for(int i = 0; i < 26; i++){
cout << alphabet[i] << " ";
}
}