C - Counting Characters

cpaojitp1

最終更新日

問題

https://onlinejudge.u-aizu.ac.jp/courses/lesson/2/ITP1/8/ITP1_8_C (新しいタブで開く)

問題文

文字列に含まれる、各アルファベットの数を数えてね。
ただし、大文字と小文字は区別しない。

制約

サンプル

I/O 1

This is a pen.
a : 1 b : 0 c : 0 d : 0 e : 1 f : 0 g : 0 h : 1 i : 2 j : 0 k : 0 l : 0 m : 0 n : 1 o : 0 p : 1 q : 0 r : 0 s : 2 t : 1 u : 0 v : 0 w : 0 x : 0 y : 0 z : 0

I/O 2

ABCD E F Z x y z
a : 1 b : 1 c : 1 d : 1 e : 1 f : 1 g : 0 h : 0 i : 0 j : 0 k : 0 l : 0 m : 0 n : 0 o : 0 p : 0 q : 0 r : 0 s : 0 t : 0 u : 0 v : 0 w : 0 x : 1 y : 1 z : 2

考察

やるだけ。

コード

https://onlinejudge.u-aizu.ac.jp/status/users/a01sa01to/submissions/1/ITP1_8_C/judge/6370877/C++17 (新しいタブで開く)

int main() { vector<int> cnt(26, 0); string s; while (getline(cin, s)) { rep(i, s.size()) { s[i] = tolower(s[i]); if ('a' <= s[i] && s[i] <= 'z') ++cnt[tolower(s[i]) - 'a']; } } rep(i, 26) { printf("%c : %d\n", i + 'a', cnt[i]); } }