拼多多算法岗100 100 100 30

第一题用的python内置sort
line = input()
nums = line.split(';')[0]
nums = list(map(int,nums.split(',')))
n = int(line.split(';')[1])

ji = []
ou = []
for num in nums:
    if num&1==1:
        ji.append(num)
    else:
        ou.append(num)
ji.sort()
ji.reverse()
ou.sort()
ou.reverse()
if len(ou)>=n:
    ans = ou[:n]
else:
    ans = ou + ji[:n-len(ou)]
ans = list(map(str,ans))
print (','.join(ans))
第二题回溯,深度优先搜索
s = int(input())
def cmp(s1,s2):
    if len(s1)!=len(s2):
        return False
    for i in range(len(s1)):
        if s1[i]!=s2[i]:
            return False
    return True
for i in range(s):
    nums = [char for char in input()]
    news = [char for char in input()]
    n = len(nums)
    paths = []
    def search(nums,luans,news,path,n):
        if n == 0:
            if cmp(luans,news):
                paths.append(path)
            return
        num = nums[0]
        nums = nums[1:]
        search(nums,luans,news,path+['d'],n-1)
        search(nums,[num]+luans,news,path+['l'],n-1)
        search(nums,luans+[num],news,path+['r'],n-1)
    search(nums,[],news,[],n)
    print ('{')
    for path in paths:
        print (' '.join(path))
    print ('} ')
第三题是dp的思路
n = int(input())#多少骰子
nums = list(map(int,input().split()))#每个骰子的可能结果数

ans = [[0 for i in range(51)] for j in range(50)]#初始化结果
maxnum = 0
for x in range(1,nums[0]+1):#初始化第1次的结果
    ans[0][x] = 1
    maxnum = max(maxnum,nums[0])
for i in range(1,n):#每个骰子
    maxnum = max(maxnum,nums[i])
    
    for j in range(1,maxnum+1):#可能的取值
        if nums[i]>=j:#如果当前数值小于当前能取到的最大值
            ans[i][j] = sum(ans[i-1][:j+1])+(j-1)*ans[i-1][j]
        else:#如果当前数值大于当前能取到的最大值
            ans[i][j] = ans[i-1][j] * nums[i]
        
all_ = 0
all_num = 0
for i in range(1,51):
    all_ += ans[n-1][i]
    all_num += ans[n-1][i]*i
print ('%.2f'%(all_num/all_))

第四题leetcode类似题,但是二分查找没实现出来,暴力排序取第k个做的 30%
line = list(map(int,input().split()))
n,m,k = line[0],line[1],line[2]
ans = [[(i+1)*(j+1) for j in range(m)] for i in range(n)]
nums = []
for a in ans:
    nums.extend(a)
nums.sort()
nums.reverse()
print (nums[k])




#笔经##拼多多##笔试题目#
全部评论
太强了
点赞 回复 分享
发布于 2019-09-01 17:31
第四题就是leetcode 668题
点赞 回复 分享
发布于 2019-09-01 19:22
点赞 回复 分享
发布于 2019-09-01 17:15
第四个 java有优先队列 然后80
点赞 回复 分享
发布于 2019-09-01 17:18
求大佬们帮忙看一下第二题,我用的是DFS,我在自己的IDE,case全过了,但是提交后零分,不知道是什么问题 import sys if __name__ == "__main__":     s = int(sys.stdin.readline().strip())     if s==0:         print('{')         print('}')     for _ in range(s):         girl=sys.stdin.readline().strip()         boy=sys.stdin.readline().strip()         res=[]         def helper(girl,girl_new,way):             if len(girl_new)>len(boy):                 return             if ''.join(girl_new)==boy:                 res.append(way)                 return             if len(girl)>0:                 helper(girl[1:],girl_new,way+['d'])                 helper(girl[1:],[girl[0]]+girl_new,way+['l'])                 helper(girl[1:],  girl_new+[girl[0]], way+['r'])         helper(girl,[],[])         print('{')         if res:             res=sorted(res)             for r in res:                 print(' '.join(r)+' ')         print('}')
点赞 回复 分享
发布于 2019-09-01 17:19
大佬第二题直接暴力深度,不用优化也能全对吗
点赞 回复 分享
发布于 2019-09-01 17:23
第二题回溯只过了77.78% 哭了
点赞 回复 分享
发布于 2019-09-01 17:27
6666666
点赞 回复 分享
发布于 2019-09-01 17:34
第三题能解释一下DP思想吗,谢谢
点赞 回复 分享
发布于 2019-09-01 18:53
第二题小梅那个是不是抽出的牌中可能有重复的?
点赞 回复 分享
发布于 2019-09-01 19:17
谢谢大腿分享,
点赞 回复 分享
发布于 2019-09-01 19:50

相关推荐

秋招进行到现在终于能写总结了。完全没想到战线会拉这么长,过程会如此狼狈,不过更应该怪自己太菜了。好在所有的运气都用在了最后,也是有个去处。背景:双2本硕科班,无竞赛,本科一段研究所实习,硕士一段大厂暑期实习但无转正。技术栈是C++ & Golang,实习是客户端音视频(而且是鸿蒙端开发),简历两个C++项目一个Golang项目。主要投递岗位:后端,cpp软开,游戏服务端,测开,以及一些不拘泥于Java的岗位。从8月起总共投递123家公司,笔试数不清了,约面大约30家。offer/oc/意向:友塔游戏(第一个offer,面试体验很好,就是给钱好少南瑞继保(计算机科班点击就送(限男生),不...
乡土丁真真:佬很厉害,羡慕~虽然我还没有到校招的时候,也想讲一下自己的看法:我觉得不是CPP的问题,佬的背书双2,技术栈加了GO,有两段实习。投了123,面了30.拿到11个offer。这个数据已经很耀眼了。这不也是CPP带来的吗?当然也不止是CPP。至少来说在这个方向努力过的也会有好的结果和选择。同等学历和项目选java就会有更好的吗?我个人持疑问态度。当然CPP在方向选择上确实让人头大,但是我觉得能上岸,至于最后做什么方向,在我看来并不重要。至于CPP特殊,有岗位方向的随机性,java不是不挑方向,只是没得选而已。也希望自己以后校招的时候能offer满满
点赞 评论 收藏
分享
伟大的烤冷面被普调:暨大✌🏻就是强
点赞 评论 收藏
分享
我是小红是我:学校换成中南
点赞 评论 收藏
分享
评论
15
99
分享
牛客网
牛客企业服务