拼多多算法工程师 秋招笔试第一题

'''
优先偶数的topN

1) 所有偶数优先级大于奇数
2) 同为偶数或同为奇数时, 数值大的优先级高
'''


import sys
a = sys.stdin.readline().strip('\n').split(',')
a[-1], n = a[-1].split(';')
n = int(n)
a = [int(num) for num in a]

def solution(n, a):
	o, e = [], []
	re = ''
	a = sorted(a)
	a.reverse()
	for num in a:
		if num %2 == 0:
			o.append(num)
		if num % 2 ==1:
			e.append(num)
	if len(o) >= n:
		for i in range(n-1):
			re += str(o[i]) +','
		re += str(o[n-1])
	elif len(o) < n:
		for i in o:
			re += str(i) +','
		for i in range(n-len(o)-1):
			re += str(e[i]) +','
		re += str(e[n-len(o)-1])


	print(re)			

solution(n, a)

#拼多多##笔试题目##题解##算法工程师#
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务