携程笔试5.6

感觉前两题比较简单,后两题难度比较大,做完之后是100,100,20,0,也不知道能不能进面试

第一题很简单,给一个长宽,给两个符号,让输出一个矩阵,要求符号交替出现,每个符号周围(上下左右)不能是和当前符号相同的,比较简单,相信各位大佬也都能A,就不细说了。

第二题也不难,给一个正整数(非常长,可能有5000位),给一个k,给一个p,要求找到这个正整数中长度为k的一段数字的最大值,输出这个最大值%p的结果,也不很难。

第三题看起来很简单,但是实际有难度。给一个数组,长度为n,再给q组数据,每组数据两个数l,r,代表左右边界,要求输出数组第l位一直乘到第r位的乘积%6。1<n,q<=100000

相信各位牛友都能写出来,主要问题在于时间复杂度。如果使用最直接的方法算,n,q都到10^5时显然会超时,这也是一直卡在20%的原因。显然他是想让我们利用一些计算过的值,不要有太多重复计算,这可以大大减少时间复杂度,例如我们算过了10-20,在算10-21时直接用10-20的结果乘21就好了。

最开始试图直接打表,写完发现内存爆了,此路不通。

苦思冥想怎么能够实现重复利用,想到一种思路,我们可以分块,比如1-100000分成100块:1-1000、1000-2000、……、99000-100000,预先计算出每一段的结果,存起来,然后算q组数据的时候就可以利用了,比如0-2001,就可以利用1-1000、1000-2000这两段从而降低时间复杂度。

但是想了太久了,最后也没写完,也不知道可不可行,哎,还是题写的太少了,菜还是得练,刷题去了

这是鼠鼠做的第一个比较大的厂的笔试,本来还想着要不要推到下一批,想想算了,直接冲吧。也不知道能不能过

欢迎牛友们一起交流,本人四月底才开始申请暑期实习,希望能和各位大佬们多交流,早日收到满意offer!
全部评论
第三题线段树,第四题换根dp,不过逻辑有点复杂调了半天😂
4 回复 分享
发布于 2024-05-06 21:59 浙江
大佬过了吗
3 回复 分享
发布于 2024-05-07 21:31 广东
第三题可以考虑因子分解,利用容斥原理,如果区间内的数能够分解出来2*3,则返回0,如果区间内有2 没有3,返回2,有3没有2,返回3,其他情况继续讨论,可以进一步考虑质数因子的个数。不过我只写了判断区间内部23的部分,过了35%。
3 回复 分享
发布于 2024-05-06 21:57 北京
请教大佬第二题,这个数字长度特别长怎么算%p呢
2 回复 分享
发布于 2024-05-06 21:25 四川
这是暑期实习的难度?
1 回复 分享
发布于 2024-05-08 08:41 上海
第三题不是快速幂吗?对每个输入数据对6取模,输入数据的长度为n,建一个(n,6)的二维数组f,f[i]为0-i之间的012345每个数的个数,计算l和r之间的012345的个数,并进行快速幂,计算过程中需要对6取模,就可以了
1 回复 分享
发布于 2024-05-06 23:57 吉林
第二题 python可以暴力过。非暴力的话,应该考虑使用滑动窗口来写。维护窗口内部的数字和,每次移位减去左端点最高位,加上右端点最低位,O(n) 时间复杂度。
1 回复 分享
发布于 2024-05-06 22:02 北京
第三题好像是线段树
1 回复 分享
发布于 2024-05-06 21:57 上海
请教第一题 为什么我超时了呜呜 用了两层for循环
1 回复 分享
发布于 2024-05-06 21:37 江苏
第一题用java为啥超时啊后面同样思路改成c才过的
点赞 回复 分享
发布于 2024-05-06 21:51 北京
大佬,第二题怎么做的?可以展开说下吗
点赞 回复 分享
发布于 2024-05-06 21:43 广东
一模一样😂
点赞 回复 分享
发布于 2024-05-06 21:19 北京

相关推荐

06-26 17:24
已编辑
宁波大学 golang
迷失西雅图:别给,纯kpi,别问我为什么知道
点赞 评论 收藏
分享
避坑恶心到我了大家好,今天我想跟大家聊聊我在成都千子成智能科技有限公司(以下简称千子成)的求职经历,希望能给大家一些参考。千子成的母公司是“同创主悦”,主要经营各种产品,比如菜刀、POS机、电话卡等等。听起来是不是有点像地推销售公司?没错,就是那种类型的公司。我当时刚毕业,急需一份临时工作,所以在BOSS上看到了千子成的招聘信息。他们承诺无责底薪5000元,还包住宿,这吸引了我。面试的时候,HR也说了同样的话,感觉挺靠谱的。于是,我满怀期待地等待结果。结果出来后,我通过了面试,第二天就收到了试岗通知。试岗的内容就是地推销售,公司划定一个区域,然后你就得见人就问,问店铺、问路人,一直问到他们有意向为止。如果他们有兴趣,你就得摇同事帮忙推动,促进成交。说说一天的工作安排吧。工作时间是从早上8:30到晚上18:30。早上7点有人叫你起床,收拾后去公司,然后唱歌跳舞(销售公司都这样),7:55早课(类似宣誓),8:05同事间联系销售话术,8:15分享销售技巧,8:30经理训话。9:20左右从公司下市场,公交、地铁、自行车自费。到了市场大概10点左右,开始地推工作。中午吃饭时间大约是12:00,公司附近的路边盖饭面馆店自费AA,吃饭时间大约40分钟左右。吃完饭后继续地推工作,没有所谓的固定中午午休时间。下午6点下班后返回公司,不能直接下班,需要与同事交流话术,经理讲话洗脑。正常情况下9点下班。整个上班的一天中,早上到公司就是站着的,到晚上下班前都是站着。每天步数2万步以上。公司员工没有自己的工位,百来号人挤在一个20平方米的空间里听经理洗脑。白天就在市场上奔波,公司的投入成本几乎只有租金和工资,没有中央空调。早上2小时,晚上加班2小时,纯蒸桑拿。没有任何福利,节假日也没有3倍工资之类的。偶尔会有冲的酸梅汤和西瓜什么的。公司的晋升路径也很有意思:新人—组长—领队—主管—副经理—经理。要求是业绩和团队人数,类似传销模式,把人留下来。新人不能加微信、不能吐槽公司、不能有负面情绪、不能谈恋爱、不能说累。在公司没有任何坐的地方,不能依墙而坐。早上吃早饭在公司外面的安全通道,未到上班时间还会让你吃快些不能磨蹭。总之就是想榨干你。复试的时候,带你的师傅会给你营造一个钱多事少离家近的工作氛围,吹嘘工资有多高、还能吹自己毕业于好大学。然后让你早点来公司、无偿加班、抓住你可能不会走的心思进一步压榨你。总之,大家在找工作的时候一定要擦亮眼睛,避免踩坑!———来自网友
qq乃乃好喝到咩噗茶:不要做没有专业门槛的工作
点赞 评论 收藏
分享
评论
11
17
分享

创作者周榜

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