[C++][Baekjoon][λ¬Έμμ΄] 10808λ² μνλ²³ κ°μ
- λ¬Έμ
10808λ²: μνλ²³ κ°μ
λ¨μ΄μ ν¬ν¨λμ΄ μλ aμ κ°μ, bμ κ°μ, …, zμ κ°μλ₯Ό 곡백μΌλ‘ ꡬλΆν΄μ μΆλ ₯νλ€.
www.acmicpc.net
μνλ²³ μλ¬Έμλ‘λ§ μ΄λ£¨μ΄μ§ λ¨μ΄ Sκ° μ£Όμ΄μ‘λ€. κ° μνλ²³μ΄ λ¨μ΄μ λͺ κ°κ° ν¬ν¨λμ΄ μλμ§λ₯Ό ꡬνλΌ.
- νμ΄
μνλ²³μ κ°μκ° μ΄ 26κ°μ΄κ³ , λ¬Έμμ΄μ μμ€ν€ μ½λλ‘ ννμ΄ κ°λ₯νλ―λ‘ index μ λ°λΌ μ μκ°μ κ°λλ€λ κ²μ μ΄μ©νλ©΄ λλ€.
1) λ¨μ΄ S μ μνλ²³ κ°μλ₯Ό count ν 벑ν°λ₯Ό λ§λ λ€.
vector<int> alphabets(26, 0);
2) μμ€ν€κ°μ μ¬μ©ν΄μ μνλ²³ index λ₯Ό ꡬν΄μ 1)μμ λ§λ 벑ν°μ μΉ΄μ΄νΈνλ€.
int index = (int)alphabet[i] - (int)'a';
a λ₯Ό μμ€ν€ μ½λ κ°μΌλ‘ νννλ©΄ 97 μ΄λ€.
μ¦, alphabet[i] κ°μ΄ a λΌλ©΄ 97μ λΉΌλ©΄ 0μ΄ λλ€.
bλ 1, cλ 2, dλ 3, ...
- κΈ°μ΅ν κ²
1) λ²‘ν° ν¬κΈ° μμ± λ° μ΄κΈ°ν
vector<int> alphabets(26, 0);
2) a μ μμ€ν€κ°
97 |
- μ½λ
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> alphabets(26, 0);
string alphabet = "";
cin >> alphabet;
for (int i = 0; i < alphabet.length(); i++) {
int index = (int)alphabet[i] - (int)'a';
alphabets[index] += 1;
}
for (int i = 0; i < alphabets.size(); i++) {
cout << alphabets[i] << " ";
}
return 0;
}
C++ λλ§μ νΈλκΉ κ΅¬λ¬Έμ΄ ν·κ°λ¦°λ€ νν