2026届拼多多服务端开发工程师笔试

第一题,给一个年份,找到比这个年份大的,数字各不相同的年份中最小的年份。暴力,数据很水。
第二题,n个横纵坐标还有对应的r,任意选一个地点,如果距离它的直线距离小于等于r,就会传播,问最多可以传播多少。用队列,枚举地点,入队,然后取出队头,遍历地点,满足要求就入队,记录答案。
第三题,给任意一个数字+1,保证数组先严格单调递增后严格单调递减,思路很容易,但不知道为什么一直百分之四
第四题,输出-1。
#牛客AI配图神器##牛客创作赏金赛##笔试##26届的你们有几段实习?#
全部评论
炸了,第一题a了,第二题22%,第三题4%?自测数据都能过啊,最烦这种错了不告诉你错误案例的唉
6 回复 分享
发布于 08-03 21:01 江西
第三题,我构造了两个数组,一个从左往右递增,一个从右往左递增,然后算答案时每个位置取两个数组的最小值减取原数组值再求和,最后构造出来的数组有可能单调递增或递减没有峰的问题我也考虑到了,但是最后还是一直48%不知道为什么
2 回复 分享
发布于 08-03 21:05 广东
面试算法题不能自己运行代码,运行按钮在面试官那里就很烦,本地调会报警
点赞 回复 分享
发布于 08-06 15:27 陕西
第四题是二分答案,但是第一题年份不知道为啥一直是0
2 回复 分享
发布于 08-03 21:03 浙江
经典 -1 骗分
点赞 回复 分享
发布于 08-05 15:00 北京
第三题同4%
2 回复 分享
发布于 08-03 21:02 北京
我主页简介地址可以包装大厂真实实习项目简历,提升竞争力,机会更大
点赞 回复 分享
发布于 08-04 18:06 江苏
四道题都和楼主一模一样,第三题最后想出来了,其实和接雨水一样,左右两边扫一遍就行,但是最后没时间写了,还是希望能进面
1 回复 分享
发布于 08-04 17:31 广东
难绷,只有第一题A了,第二题28%,第三题8%,难绷,特别第二题,案例和自测数据都能过,边缘数据都可以,搞不懂
点赞 回复 分享
发布于 08-04 16:49 四川
第三题考虑严格递增和严格递减的情况下的变化次数,然后枚举1~n-1 下标作为峰值时的答案。 第四题二分,Go 语言只能过 55%。
1 回复 分享
发布于 08-03 21:06 广东
想要来拼多多商品组的可以联系我
点赞 回复 分享
发布于 08-04 14:20 上海
第二题我用并查集的,a了0.2 不知道哪里有错
1 回复 分享
发布于 08-03 21:02 新加坡
求公司名
点赞 回复 分享
发布于 08-04 10:05 北京
一模一样,我也是,三题一直百分之4,四题-1
1 回复 分享
发布于 08-03 21:02 天津
1.5,不知道有没有面试。。。。。。。。
点赞 回复 分享
发布于 08-03 21:53 广东
第三题 用一个前缀去维护当前节点i作为顶峰时 前面的花费 然后用一个后缀去维护节点i+1作为顶峰时后面的花费 然后再加上节点i和i+1的差值就行了 第四题直接-1骗分10%
1 回复 分享
发布于 08-03 21:01 上海
我去,第四题直接输出-1,多少分??
点赞 回复 分享
发布于 08-03 21:43 辽宁
看来大家都一样的题目,我投的算法工程师
1 回复 分享
发布于 08-03 21:01 江西
耐挂王
点赞 回复 分享
发布于 08-03 21:38 广东
第二题一直在97有没有人知道为什么的
点赞 回复 分享
发布于 08-03 21:22 广东

相关推荐

头像 会员标识
昨天 18:24
门头沟学院 Java
可运行版本 import java.util.HashMap;import java.util.Map;class LRUCache {class DLinkedList{int key;int val;DLinkedList next;DLinkedList prev;long timeStamp;public DLinkedList(){this.timeStamp = System.currentTimeMillis();}public DLinkedList(int key,int val){this.key = key;this.val = val;this.timeStamp = System.currentTimeMillis();}}int capacity;int size;DLinkedList head;DLinkedList tail;Map<Integer,DLinkedList> map;long ttl;public LRUCache(int capacity,long ttl){this.capacity = capacity;size = 0;head = new DLinkedList();tail = new DLinkedList();head.next=tail;tail.prev = head;map = new HashMap<>();this.ttl = ttl;}public void addToHead(DLinkedList node){node.next = head.next;head.next.prev = node;node.prev = head;head.next = node;}public void removeOne(DLinkedList node){node.next.prev = node.prev;node.prev.next = node.next;}public boolean isExpired(DLinkedList node){long now = System.currentTimeMillis();long diff = now-node.timeStamp;if(diff>ttl){return true;//true是过期了的意思 false才是没过期!!!}return false;}public int get(int key){if(!map.containsKey(key)){return -1;}else{DLinkedList node = map.get(key);if(isExpired(node)){removeOne(node);map.remove(key);size--;return -1;}node.timeStamp = System.currentTimeMillis();removeOne(node);addToHead(node);return node.val;}}public void put(int key,int val){if(!map.containsKey(key)){DLinkedList newNode = new DLinkedList(key,val);addToHead(newNode);map.put(key,newNode);size++;if(size>capacity){DLinkedList oldNode = tail.prev;removeOne(oldNode);map.remove(oldNode.key);size--;}}else {DLinkedList newNode = new DLinkedList(key,val);DLinkedList oldNode = map.get(key);removeOne(oldNode);addToHead(newNode);map.put(key,newNode);}}}class Main{public static void main(String[] args) {LRUCache cache = new LRUCache(2, 1000); // 1秒TTLcache.put(1, 1);cache.put(2, 2);System.out.println(cache.get(1)); // 返回 1try {Thread.sleep(1500); // 等待1.5秒让数据过期} catch (InterruptedException e) {e.printStackTrace();}System.out.println(cache.get(1)); // 返回 -1(已过期)System.out.println(cache.get(2)); // 返回 -1(已过期)}}
点赞 评论 收藏
分享
评论
6
11
分享

创作者周榜

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