/* 7-5 求一批整数中出现最多的个位数字 分数 10 作者 徐镜春 单位 浙江大学 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数N(≤1000),在第二行中给出N个不超过整型范围的非负整数,数字间以空格分隔。 输出格式: 在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n1、n2、……为出现次数最多的个位数字,按从小到大的顺序排列。数字间以空格分隔,但末尾不得有多余空格。 输入样例: 3 1234 2345 3456 输出样例: 3: 3 4 代码长度限制 16 KB 时间限制 400 ms 内存限制 64 MB */ #include int main() { int n; scanf("%d", &n); int a[n], b[10], c; for (int i = 0; i < 10; i++) b[i] = 0; for (int i = 0; i < n; i++) { scanf("%d", &a[i]); if (a[i] == 0) b[0]++; for (; a[i] != 0; a[i] /= 10) { c = a[i] % 10; b[c]++; } } int max = b[0]; for (int i = 1; i < 10; i++) { if (max < b[i]) max = b[i]; } printf("%d:", max); for (int i = 0; i < 10; i++) { if (max == b[i]) printf(" %d", i); } return 0; }