Problem:
鶴ヶ城

会津若松市のシンボルである鶴ヶ城は、蒲生氏郷が本格的な天守閣を築城し、「鶴ヶ城」と名付けました。天守閣からは会津盆地が一望できます。また、晴れた日には、白虎隊で有名な飯盛山の山頂から鶴ヶ城を見ることができます。

会津若松市の今後の広報活動の参考にするため、鶴ヶ城に訪れた来場者について、年代調査をすることにしました。来場者の年齢を入力とし、下記の年齢区分別に人数を出力するプログラムを作成してください。

区分

年齢

10歳未満

0 ~ 9

10代

10 ~ 19

20代

20 ~ 29

30代

30 ~ 39

40代

40 ~ 49

50代

50 ~ 59

60歳以上

60 ~

Input

複数のデータセットの並びが入力として与えられます。入力の終わりはゼロひとつの行で示されます。
各データセットは以下の形式で与えられます。

n
a1
a2
:
an

1 行目に来場者の人数 n (1 ≤ n ≤ 1000000)、続く n 行に i 人目の来場者の年齢 ai ( 0 ≤ ai ≤ 120 ) が与えられます。

Output

データセット毎に以下の形式で人数を出力します。

1 行目: 10 歳未満の人数

2 行目: 10 代の人数

3 行目: 20 代の人数

4 行目: 30 代の人数

5 行目: 40 代の人数

6 行目: 50 代の人数

7 行目: 60 歳以上の人数

Sample Input

8
71
34
65
11
41
39
6
5
4
67
81
78
65
0

Output for the Sample Input

2
1
0
2
1
0
2
0
0
0
0
0
0
4

Solution in C (judge verdict: Accepted)

// Aizu Vol-1 0184: Tsuruga Castle
// 2017.8.2

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>

char *gets(char *);
char buf[100], *p;

int getInt(void)
{
	int n = 0;
	//	while (isspace(*p)) p++;
	while (isdigit(*p)) n = 10 * n + (*p++ - '0');
	return n;
}

void putInt(int n)
{
	char s[22], *p;

	if (n) {
		p = s + 20, *p = 0;
		while (n) *--p = (n % 10) + '0', n /= 10;
		puts(p);
	} else putchar('0'), putchar('\n');
}

int cnt[15];

int main()
{
	int i, n, k;

	while (1) {
		gets(p = buf);
		if (!(n = getInt())) break;
		memset(cnt, 0, sizeof(cnt));
		i = n;
		while (i--) {
			gets(p = buf);
			k = *p++ - '0';
			if (*p >= '0') {
				if (*++p < '0') cnt[k]++;
			} else cnt[0]++;
		}
		for (i = k = 0; i < 6; i++) putInt(cnt[i]), k += cnt[i];
		putInt(n - k);
	}
	return 0;
}