3.30柠檬微趣笔试【数分】
八道多选,一道单选,两道场景分析(一道具体分析,一道手写SQL),几道逻辑推理题,两道编程题(一个SQL一个消消乐编程)。
多选考的是机器学习相关的知识,场景分析里的具体分析就是谈谈某个游戏的具体业务怎么怎么样,逻辑推理判断题里面还有个脑筋急转弯“1 2 3 4 5 6 7 8 9,在数字之间添加+或-,使得最后结果是100”。SQL题目考察了聚合函数、子查询啥的,编程题就卡在了优化上,空间优化。我做了这么多题都是卡时间的,头一次碰见卡空间的,拼尽全力无法战胜。
先写的这个,被卡了时间。
class Solution: def bingoAsk(self , n: int, m: int, magic_num: List[int], left_num: List[int], right_num: List[int]) -> List[int]: # write code here ans=[] for i in range(m): out=sum(magic_num[left_num[i]:right_num[i]+1]) ans.append(out) return ans
又写了这个,被卡了空间。#牛客AI配图神器#
class Solution: def bingoAsk(self , n: int, m: int, magic_num: List[int], left_num: List[int], right_num: List[int]) -> List[int]: # write code here ans=[] out=[[] for _ in range(m)] for i in range(m): out[i]=magic_num[left_num[i]:right_num[i]+1] for i in range(m): ans.append(sum(out[i])) return ans