[백준 / 10808 / C++] 알파벳 개수

Park·2023년 9월 18일
0

코딩테스트 - Week1

목록 보기
2/15

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

1. 문제 접근

  • 입력으로 들어오는 알파벳의 문자를 count하면 된다
  • count문제
    • map을 활용 : 문자열을 count할 때
    • 배열을 활용 : integer을 기반으로 count할 때(예외 : 입력이 sparse하게 들어올 때 => 코테에서 배열은 1000만개까지 한계)
  • 아스키코드를 기반으로 배열을 활용해서 할 수 있음

2. 시행착오

  • 없음

3. 코드 및 풀이

3.1 배열을 활용한 풀이

  • 소문자 a : 97로부터 시작
  • 인덱스 값을 문자 - 'a'로 해서, count하면 간단
#include <bits/stdc++.h>
using namespace std;

int arr[26];
string s;
int main(){
    
    // 1. input
    cin >> s;
    
    // 2. count
    for(char c : s){
        int idx = c - 'a';
        arr[idx]++;
    }
    
    // 3. print
    for(int idx = 0; idx < 26; idx++){
        cout << arr[idx] << " ";
    }
    
    return 0;
}
profile
안녕하세요!

0개의 댓글