Problem:
Counting Characters

Write a program which counts and reports the number of each alphabetical letter. Ignore the case of characters.

Input

A sentence in English is given in several lines.

Output

Prints the number of alphabetical letters in the following format:

a : The number of 'a'
b : The number of 'b'
c : The number of 'c'
.
.
z : The number of 'z'

Constraints

The number of characters in the sentence < 1200

Sample Input

This is a pen.

Sample Output

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

Solution in JAVA (judge verdict: Wrong Answer)

/**
 * 与えられた英文に含まれる、
 * 各アルファベットの数を数えるプログラムを作成して下さい。 なお、小文字と大文字は区別しません。 
 */

//スキャナつかうため

import java.util.Scanner;

public class Main {
	// プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成
		Scanner sc = new Scanner(System.in);
		
		//アルファベットの数配列を作る
		int[] cou = new int[26];

		//処理を繰り返す
		while (sc.hasNext()) {
			//受け取った文字列を受け取り、小文字にする
			String stralf = sc.nextLine();
			stralf = stralf.toLowerCase();
			//文字列をcharに変換して配列に入れていく
			char[] chalf = stralf.toCharArray();
			//受け取った文字列の長さだけ繰り返す
			for (int i = 0; i < chalf.length; i++) {
				
				//chalfにアルファベットはいっていた場合、couの配列の数字に＋１していく
				if (chalf[i] >= 'a' && chalf[i] <= 'z') {
					cou[chalf[i] - 'a']++;
				}
			}
			
			//アルファベット＋１でつ次の文字表示
			//アルファベトに対応している数値表示
			for (int k = 0; k < 26; k++) {
				System.out.println((char) ('a' + k) + " : " + cou[k]);
			}
		}
	}
}