我是靠谱客的博主 温柔皮皮虾,最近开发中收集的这篇文章主要介绍基础算法003-----数字统计问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

统计数字问题:
一本书的页码从自然数1开始顺序编码直到自然数n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字0。数字计数问题要求对给定书的总页码n, 计算出书的全部页码中分别用到多少次数字0,1 ,2,...,9。

要求:
输入格式:
输入只有1行,给出表示书的总页码整数n。

输出格式:
输出共有10行, 在第k行输出页码中用到的数字k-1的次数,k= 1, 2, ... ,10

输入样例:
11

输出样例:
1
4
1
1
1
1
1
1
1
1

解法如下:

num = int( input('请输入页码:') )  #如果在PTA中,不能有中文,且输入不能这么写,PTA中的输入格式如下:
'''
a = input()
num = int(a)
'''
page_list = []    #存放输入的页码分散成的数字               
num_list = []     #存放各个数字出现的次数
for i in range(1,num+1):
	page_list.append(i)                 #分散页数,将数字存入列表
page_list= str(page_list)             #将列表字符串化,以便统计各个数字出现次数

for x in range(0,10):
	num_list.append(page_list.count(str(x)))    #用count方法统计已经字符化的数字出现的次数,并统计到num_list中

for result in num_list:                     #将统计好的数字输出
	print(result)

实际上,上面的方法并没有用到什么算法的思想,为了简单,笔者直接用count()函数对转化为字符串的列表进行了数字统计。

最后

以上就是温柔皮皮虾为你收集整理的基础算法003-----数字统计问题的全部内容,希望文章能够帮你解决基础算法003-----数字统计问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部