阿里云3.24笔试题

只说编程题,选择题太难了,我不会

三道题都是O(n)解法:

第一题是经典dp,每一个可以选蓝色或者黄色,有各自的得分,也可以不选,但是相邻不能同色。求最大得分

dp维护蓝、黄、不选三个状态,最后求最大值即可。

第二题是一个贪心,找到两个数组完全不同的互斥区间个数(区间内对应index的数都不能相同)

维护一个两个数组同一下标数值相等的数组,在数组前push(-1),在数组后push(n,数组的长度)

然后找到维护数组相邻下标之间有多少数,设为x,则结果加上x*(x+1)/2

第三题是一个贪心,对于每一个国家必须对应一个粮食的消耗(第一个国家除外),然后找到每一个国家需要购买粮食的地方,这个地方的代价最小即可。对于国家i,从j买,花费vec[j],则开销(i-1-j+vec[j]),对于每一个i来说,只需要让(-1-j+vec[j])最小,取反也就是(j+1-vec[j])最大,对于i,维持一个[1,i-1]的最大一个即可。最后模拟累加即可

#笔试##阿里云笔试##2025暑期实习##aliyun#
全部评论
一百分钟三道编程题,还有选择?这也太紧张了
点赞 回复 分享
发布于 2024-04-10 18:53 江苏
哥 第三题可以再解释一下吗 一直没想明白
点赞 回复 分享
发布于 2024-03-31 17:44 香港
3.24注意一下
点赞 回复 分享
发布于 2024-03-24 16:41 江苏

相关推荐

10-22 12:03
山东大学 Java
程序员小白条:26届一般都得有实习,项目可以随便写的,如果不是开源社区的项目,随便包装,技术栈也是一样,所以本质应该找学历厂,多投投央国企和银行,技术要求稍微低一点的,或者国企控股那种,纯互联网一般都得要干活
应届生简历当中,HR最关...
点赞 评论 收藏
分享
冲鸭2024:亚信不去也罢
投递亚信科技(中国)有限公司等公司6个岗位
点赞 评论 收藏
分享
评论
7
15
分享

创作者周榜

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