https://www.acmicpc.net/problem/10808
10808번: 알파벳 개수
단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다.
www.acmicpc.net
알파벳 소문자를 alphabet[0]=a, alphabet[1]=b ... alphabet[25]=z 배열에 넣어두고,
입력받은 값에서 'a'문자(=97)를 뺀 값으로 ( input[i]-'a' )
result배열에 영소문자의 개수를 각각 저장한다. (result[0]=a의개수, result[1]=b의개수 ... result[25]=z의 개수)
코드
#include <iostream>
#include <stack>
#include <string>
using namespace std;
//10808
int main()
{
string input;
char alphabet[26];
int result[26]={0};
for(int i=0;i<26;i++){
alphabet[i] = 'a'+i;
}
cin>>input;
for(int i=0;i<input.length();i++){
result[ input[i]-'a' ]++;
}
for(int i=0;i<26;i++) cout << result[i] <<" ";
return 0;
}
'코딩테스트 연습 > Baekjoon' 카테고리의 다른 글
[Baekjoon] 10820번: 문자열 분석 (c++) (0) | 2022.03.31 |
---|---|
[Baekjoon] 10809번: 알파벳 찾기 (c++) (0) | 2022.03.31 |
[Baekjoon] 10799번: 쇠막대기 (c++) (0) | 2022.03.31 |
[Baekjoon] 3584번: 가장 가까운 공통 조상 (0) | 2022.02.21 |
[Baekjoon] 1593번: 문자 해독(c++) (0) | 2022.02.18 |