美文网首页
读入一个数列和N值,返回按优先级排序的N个数 满足...Pyth

读入一个数列和N值,返回按优先级排序的N个数 满足...Pyth

作者: PathonDiss | 来源:发表于2019-10-22 18:48 被阅读0次

拼多多2019.09.01秋招笔试 算法工程师

image.png
image.png
image.png
/*
小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编。且我这有个学习Python基地,里面有很多学习资料,感兴趣的+Q群:895817687
*/

def pdd_1():
 # 根据取模运算,将奇数和偶数分开,分别排序,之后拼接输出
 
 # nums, N = input().split(';')
 
 aa = '555503,772867,756893,339138,399447,40662,859037,628085,855723,974471,599631,636153,581541,174761,948135,411485,554033,858627,402833,546467,574367,360461,566480,755523,222921,164287,420256,40043,977167,543295,944841,917125,331763,188173,353275,175757,950417,284578,617621,546561,913416,258741,260569,630583,252845;10'
 nums, N = aa.split(';')
 nums = map(int, nums.split(','))
 N = int(N)
 
 nums_0, nums_1 = [], []
 for i in nums:
 if i % 2 == 0:
 nums_0.append(i)
 nums_0.sort(reverse=True)
 else:
 nums_1.append(i)
 nums_1.sort(reverse=True)
 
 nums = nums_0 + nums_1
 for i in range(N - 1):
 print(nums[i], end=',')
 print(nums[N], end='')
def pdd_2():
 # DFS 求解,着重找到递归结束的条件
 # DFS 注意顺序,以满足输出的字典序要求,避免二次排序
 
 def check(nums0, new_0, nums1, new_res):
 if not nums0:
 if len(new_0) == len(nums1):
 for i in range(len(new_0)):
 if new_0[i] != nums1[i]:
 return
 res.append(new_res)
 return
 
 num = nums0[0]
 nums0 = nums0[1:]
 
 check(nums0, new_0, nums1, new_res + ['d'])
 check(nums0, [num] + new_0, nums1, new_res + ['l'])
 check(nums0, new_0 + [num], nums1, new_res + ['r'])
 
 # N = int(input())
 N = 1
 for i in range(N):
 # nums_0 = list(map(int, input().split()))
 # nums_1 = list(map(int, input().split()))
 
 nums_0 = [1, 2, 3]
 nums_1 = [3]
 print('{')
 if set(nums_0) > set(nums_1):
 res = []
 check(nums_0, [], nums_1, [])
 for j in res:
 print(' '.join(j))
 print('} ')

相关文章

  • 【拼多多-寻梦】优先级数列。

    1、题目描述 读入一个数列和N值,返回优先级排序的N个数。满足:(1)所有偶数优先级大于奇数。(2)同为偶数或者奇...

  • 读入一个数列和N值,返回按优先级排序的N个数 满足...Pyth

    拼多多2019.09.01秋招笔试 算法工程师

  • 海量数据处理

    1 数值topK问题:给出n个数中最大的k个数 1.1 若能全部读入内存 1,快速排序+二分。O(n)2,冒泡排序...

  • B1030 完美数列 (25分)

    题意:1、给定N个数,和一个权重P,要求,最大值M<=mp(最小值乘以p),求着N个数中最多可以构成完美数列的数字...

  • 发烧的斐波那契数列

    斐波那契数列 提问 指定一个数值n,返回斐波那契数列中的前n项,如 6 返回[1, 1, 2, 3, 5, 8] ...

  • 排序算法

    1 冒泡排序 如果是对n个数升序排序,冒泡排序每趟排序把一个最大值浮到最后。 第一趟,针对n个数,比较第1个数和第...

  • 排序算法总结

    1. 插入排序 直接插入排序 在要排序的一组数中,假设前n-1个数已经拍好顺序,现将第n个数插到有序数列中,使这n...

  • 寻找和为定值的多个数

    寻找和为定值的多个数 题目描述: 输入两个整数 n 和 sum ,从数列 1,2,3 ....... n 中随意...

  • 基数排序

    基数排序(Radix Sort) O(n*k) n>>k ,k为待排序数列的最大值的位数,max=1000,k=4...

  • 斐波那契数列JAVA实现- 返回前n个元素的数组

    发现网上的都是返回第n个数的,而不是数组,所以写了一个。输入:n输出:包含前n个元素的斐波那契数列数组

网友评论

      本文标题:读入一个数列和N值,返回按优先级排序的N个数 满足...Pyth

      本文链接:https://www.haomeiwen.com/subject/kbkcvctx.html