解题思路:

注意事项:

参考代码:

def sum_town(num): #定义函数,以num为参照物
   a={'0':1,'4':1,'6':1,'9':1,'8':2} #使用字典映射,表示对应数字中含有0所对应的数值
   return sum(a.get(i,0) for i in str(num)) #将其转变为字符串随后遍历,使用get函数表达各个数字在字典中的对应值并相加
n=int(input()) #表示输入的个数
m=map(int,input().split()) #输入用于判断的数值
sorted_num=sorted(m,key=lambda x:(sum_town(x),x)) #使用sorted函数搭配lambda,将数字进行排序
print(' '.join(map(str,sorted_num))) #判断后的数字由于参照函数sum_town故而是列表,因而将其转变为字符串进行输出

点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论