单点时限: 1.0 sec
内存限制: 512 MB
给定从1到n的数字,按照以下优先级进行降序(优先级高的数字排前面)排序输出:
(1)将数字转化为二进制,1的个数多的数字优先级高。
(2)若(1)优先级相同,数字大的数优先级高。
一个正整数n (1<=n<=1000)
以空格隔开的n的排序后的数字
4
3 4 2 1
from functools import cmp_to_key #导入包
def ff(a, b):#比较函数
#若$a==b$ 返回0
#若$ab$ 返回-1
X.sort(key=cmp_to_key(ff))#对X按照ff进行排序