其实这个题目的类型和前几篇关于 水仙花数、对称数 都是比较相似,关键的步骤都是将每一位数进行分离,然后存放在列表里面,再用列表进行题目的要求。
题目详情
给定一个k位整数N = d~k-1~*10^k-1^ + … + d~1~*10^1^ + d~0~ (0<=d~i~<=9, i=0,…,k-1, d~k-1~>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N = 100311,则有2个0,3个1,和1个3。
输入格式:
每个输入包含1个测试用例,即一个不超过1000位的正整数N。
输出格式:
对N中每一种不同的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。要求按D的升序输出。
输入样例
201808071940
输出样例
0 : 4
1 : 2
2 : 1
4 : 1
7 : 1
8 : 2
9 : 1
解题思路
前面说了,这个主要是将每一位上的数字分离出来,存放在列表里,然后再对分离数字进行简单的计算处理,就可以实现主要的功能。
def func( n ):
L = [0, 0,

这道题目要求统计一个k位正整数N中每位数字出现的次数。通过将N的每一位分离并存储,然后计算每种数字的频率,最终按照数字升序输出结果。在实现过程中,注意到数字范围在0到9之间,可以直接计数,避免额外存储,简化了处理和排序的复杂性。
最低0.47元/天 解锁文章
3858

被折叠的 条评论
为什么被折叠?



