阿里笔试8.21求助

def findPath(nums):
    if not nums:return 0
    if len(nums)==1:return nums[0]
    if len(nums)==2:return max(nums)
    if len(nums)==3:return sum(nums)
    n=len(nums)
    stage1=nums[0]+nums[1]+nums[-1]+nums[1]
    stage2=nums[0]+nums[-1]+nums[0]+nums[-2]
    return min(stage1,stage2)+findPath(nums[:n-2])
k=int(input())
for _ in range(k):
    n=int(input())
    nums=sorted(list(map(int,input().split(" "))))
    print(findPath(nums))
8.21晚笔试第一题报零,事后回忆总结代码如下。个人认为思路是没错的。自测也没问题,但是每次提交只能通过百分之十,然后报错
跪求各位大佬们解个惑,本菜鸡感激不尽
全部评论
用递归层数太深,栈会溢出,直接用while迭代就好了
点赞 回复 分享
发布于 2020-08-21 22:54

相关推荐

看到这个内容真是闹麻了。。。。。。现在有了AI以后很多人面试都会作弊吗? 那对老老实实面试的人岂不是不公平....
程序员牛肉:公平那是对小孩子讲的童话故事,成年人的世界只有能不能接受失败的后果。 你要是能接受面试作弊被发现之后多家公司联合永久拉黑的后果,你就搞。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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