#网易互娱笔试2020-4-11数据挖掘岗

在网上没找到组织的我。。。
多少道选择题忘了   两道编程题   一道AC   一道28多   求指教

第一道   求列表内三个元素之和等于一个target  求个数
(匆匆忙忙有点乱  没整理  通过就好 哈哈)
枚举只能80%   这应该是卡时间了吧
我的思路就是把列表一个塞进set   一个塞进字典
先考虑三个数各不相同  用的枚举
再考虑有两个数相同   三个或三个以上数相同
import sys
from collections import Counter

if __name__=="__main__":

    a = list(sys.stdin.readline().strip().split(','))
    a = [int(i) for i in a]
    a_s = list(set(a[1:]))
    a_d = dict(Counter(a[1:]))
    
    count = 0
    for i in range(0,len(a_s)):
        for j in range(i+1,len(a_s)):
            for k in range(j+1,len(a_s)):
                if a_s[i]+a_s[j]+a_s[k] == a[0]:
                    count+=a_d[a_s[i]]*a_d[a_s[j]]*a_d[a_s[k]]
    for i in a_d:
        if a_d[i] == 2:
            for j in a_s:
                if 2*i + j == a[0] and i!=j:
                    count+=a_d[j]
        if a_d[i] >= 3:
            if 3*i == a[0]:
                c = 1
                for j in range(3):
                    c *= a_d[i]-j
                c = c//6
                count += c
            for j in a_s:
                if 2*i + j == a[0] and i!=j:
                    c = 1
                    for k in range(2):
                        c*=a_d[i]-k
                    c = c//2
                    count+=c*a_d[j]
    print(count)

第二道  打副本    
profit_list = [1,2,3,4,5]
随意位置开始   开始跳跃   不能相邻   求最大利益
我不造是不是可以一下子跨两个    要是不可以的话  我的想法就是建个二叉树  递归求和   奈何时间不够 功底不足
也不造有没有负数😔


#网易互娱2020春招笔试##网易互娱##笔试题目##数据挖掘工程师#
全部评论
都是lc原题,三数之和,打家劫舍
1 回复 分享
发布于 2020-04-12 00:07
第一题A了20% 第二题AC 。。。 C++ 不太明白为什么第一题只过了20%
点赞 回复 分享
发布于 2020-04-12 20:52
哈哈,大家收到面试了吗
点赞 回复 分享
发布于 2020-04-13 12:40
大家收到面试通知了吗
点赞 回复 分享
发布于 2020-04-16 16:22
第二题动态规划,从后往前推从某一关开始能得到的最高分
点赞 回复 分享
发布于 2020-04-16 22:17
收到面试了吗
点赞 回复 分享
发布于 2020-04-21 17:55
只有coding吗,其他的呢,简答有吗
点赞 回复 分享
发布于 2021-04-15 12:22
三数之后用双指针
点赞 回复 分享
发布于 2021-04-18 06:40

相关推荐

11-04 14:10
东南大学 Java
_可乐多加冰_:去市公司包卖卡的
点赞 评论 收藏
分享
无情咸鱼王的秋招日记之薛定谔的Offer:好拒信,偷了,希望有机会用到
点赞 评论 收藏
分享
2 7 评论
分享
牛客网
牛客企业服务