#拼多多集团-PDD笔试#第三题求二维区间和卡哈希编译卡了半小时还是没调通,我真服了什么编译器
全部评论

相关推荐

本人也入职快一年了,这里也可以分享一下个人对工作的体验分享。工作一年下来,加上中间也来了很多其他大厂的朋友一起交流,总的来说,对于热爱编程,不想被各种会议和文档折磨的小伙伴来说,这里是最适合的地方!关于入职难度,本人是秋招直接入职的,bg如下:双非本+211硕+0实习。投很多大厂都是直接简历挂的,但是多多这边直接到了商家端核心组。pdd的笔试是纯代码题,没有选择填空,代码题难度个人认为大概力扣偏中等难度的中等。也是本人秋招里唯二做满分的笔试。pdd的面试几乎不问八股,内容大概是做题+问项目。本人当时没有太多准备秋招的时间,所以项目只有一个java项目+一个读研期间做的工作。面试时能感觉到面试官对这些内容不是很了解,但依然一边赞赏,一边逐层考察,直到问到我不了解的细节才点到为止,面试体验可以说是很好了。面试写题的难度大概是力扣偏中等的中等。且不限制写题语言,虽然我面试的java岗,但我写题用的c++,面试官也用c++帮我修改完善,点赞!关于工作强度,pdd是标准的11116,但是实际工作下来属于身体累但心不累的水平,工作上基本只需要专注写代码和学技术。有需求时就忙一忙需求,没需求或者不紧急的时候就自己学一学技术。组内有很多元老级的大佬,由于职级扁平,大家都是同一层级,所以请教大佬们毫无压力。互帮互助的氛围的确能加速成长。且+1对工作体验的影响真的非常大,我组长可以说是整个部门幸福感最高的组长了,技术力业务力拉满也不失温柔体贴! 建议全国普及。午休晚休完全自由,下班后除了很紧急的线上问题不会有人打扰。对于本人,经常喜欢出去摄影,可参考本人的其他帖子关于收入,对于我组这样的核心中的核心组,大家可以放心。不然组内不会有这么多元老大佬。关于找工作,本人的秋招可谓非常艰难,加上导师不放实习,中间碰过无数次壁。学历歧视+实习歧视让找工作越来越难,找到适合自己的工作更是难上加难。我组真的非常缺人!目前依然在快速增长期,hc充足,组内只推, 暑期实习可无痛转正,免去秋招压力!感兴趣的小伙伴可私聊,有问必答!内推链接:https://careers.pddglobalhr.com/campus/grad?t=bDrYDk6gB5内推码:bDrYDk6gB5。(通过此链接投递计入内推,内推简历优先筛选~)
拼多多集团-PDD成长空间 1056人发布
点赞 评论 收藏
分享
03-14 17:03
C++
第一题:给一个区间[l, r],计算区间中整数的因子数是奇数的个数并输出,比如12的因子数有:1,2,3,4,6,12,因此12不符合条件。这题只要意识到因子数都是成对出现的即可,只有当有2个因子数相等时才会出现奇数情况,比如:1=1*1, 4=2*2, 9=3*3,81=9*9我是对左右区间开平方取整,然后相减即可,注意想清楚并处理闭区间的特殊情况第二题:给定一个超级斐波拉契数列,前k个值为1,第n项是前n-1到n-k之和,输入k和q,q代表查询次数,接下来有q次输入,每次输入x,x代表查询第x项,输出答案,答案可能很大,因此要求输出对(10^9+7)取模这题考的时候想复杂了,半天没写出来,后来理清楚思路之后感觉也还好,但感觉还是挺多坑的,滑动窗口应该是最优时间复杂度吧。#include <bits/stdc++.h>using namespace std;const int MOD = 1e9 + 7;// 参数:滑动数组、窗口大小、淘汰指针、结果、目标项序号、当前序号int search(vector<long long>& path, int& k, int& re, long long& result, int& x, int& index){// [re]需要用之前的result更新,而result又需要用[re]更新,因此必须用一个临时变量操作int reval = path[re];         //临时变量保留滑出的值,用于更新resultpath[re] = result;            //更新滑动窗口++re;                         //更新滑动指针,并检测环if(re==k)re = 0;++index;                              //更新indexresult = (result*2 - reval) % MOD;    //更新第index项的值if (result < 0) result += MOD;        // 保证非负if(index==x)return result;return search(path, k, re, result, x, index);}int main(){int k;int q;cin >> k >> q;while(q--){int x;cin >> x;vector<long long> path(k, 1);int re = 0;long long result = k;index = k+1;if(x<=k)cout << 1;else if(x==k+1)cout << k;elsecout << search(path, k, re, result, x, index); //从第k+1项开始才滑动if(q!=0)cout << endl;}return 0;}
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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