美团笔试第二题怎么做的?

数组中有0,代表最大值最小值的那题
为什么看起来那么简单的题,O(n)的时间复杂度,居然会超时?

拿了250分, 我就是个250
全部评论
java我也没过,超时了,怀疑题有问题,针对java选手
3 回复 分享
发布于 2024-03-09 12:39 河北
我用golang怎么写都超时,后面换成Python就过了
3 回复 分享
发布于 2024-03-09 12:38 黑龙江
全部用long
2 回复 分享
发布于 2024-03-09 12:19 辽宁
Scanner in = new Scanner(System.in); int n = in.nextInt(); int q = in.nextInt(); long res = 0, countOfZero = 0; for (int i = 0; i < n; i++) { int num = in.nextInt(); res += num; if (num == 0) countOfZero++; } long[] minRes = new long[q]; long[] maxRes = new long[q]; for (int i = 0; i < q; i++) { minRes[i] = res + countOfZero * in.nextInt();; maxRes[i] = res + countOfZero * in.nextInt(); } for (int i = 0; i < q; i++) { System.out.printf("%d %d\n", minRes[i], maxRes[i]); } 有没有大哥帮忙看看是为什么a不了
1 回复 分享
发布于 2024-03-09 16:26 江苏
直接统计未知数字,o(1)完成
1 回复 分享
发布于 2024-03-09 12:24 福建
本来我一看 10的5次,还搞了个排序,排序去掉,然后提高了点,加个 long,然后减少 O(n) 的次数就过了,还得剪枝,蚌埠,这玩意还看运气的,可能多试几次,本来90+,然后就过了
点赞 回复 分享
发布于 2024-03-09 13:00 浙江
我用Python O(n)过了
点赞 回复 分享
发布于 2024-03-09 12:55 江苏
怎么查看分数呀
点赞 回复 分享
发布于 2024-03-09 12:36 广东
我也是个250被自己蠢哭
点赞 回复 分享
发布于 2024-03-09 12:33 湖北
long+sout一次,sout蛮浪费时间
点赞 回复 分享
发布于 2024-03-09 12:31 湖南
全用long,多执行几次就过了😂😂
点赞 回复 分享
发布于 2024-03-09 12:24 北京
我也一样超时了 不知道为什么 后面改成c++过了
点赞 回复 分享
发布于 2024-03-09 12:23 北京
先求个和记为s。然后count一下零的个数记为c,区间范围[l,r],答案就是s+c*l, s+c*r。数据大小没注意,因为用的是py
点赞 回复 分享
发布于 2024-03-09 12:20 江苏
O(n)路过,没有超时
点赞 回复 分享
发布于 2024-03-09 12:20 上海
点赞 回复 分享
发布于 2024-03-09 12:19 广东

相关推荐

HR_丸山彩同学:你的项目描述里,系统设计讲了很多:MemCube是什么、三级存储架构怎么设计、四种遗忘策略分别是什么。这些面试的时候讲没问题,但简历上不需要这么细。 简历要突出的是影响力,不是实现细节。面试官看简历的时候想知道的是「这个项目有多大价值」,不是「这个项目具体怎么实现的」。实现细节是面试时候聊的 怎么改:技术细节可以精简为一句「采用三级存储架构+四种遗忘策略」,把省出来的篇幅用来写影响力。比如:项目有没有开源?有没有写成技术博客?有没有被别人使用过? 校园经历没有任何信息量,任何人都可以写这句话,写了等于没写。更关键的是,你投的是技术岗,校园活动经历本来就不是加分项。如果非要写,必须写出具体的数字和成果。如果你没有这些数字,那就老老实实删掉 「端到端耗时缩减30-40%」要给出确切数字和绝对值。从1000ms降到600ms是降了40%,从100ms降到60ms也是降了40%,但这两个含义完全不一样。其他也是,涉及到数据,准备好证据,口径统一,面试会问 「熟练」「熟悉」「了解」混在一起用,读起来很乱。而且「了解前端需求」最好改成「具备前后端协作经验」
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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