阿里算法笔试 2026.03.28
基础单选
基础多选
NLP单选 2题
NLP多选 2题
编程题 3题(50分)
编程题占分最少的一场,也是题目最简单的一场
第一题给了两个长度为n的数组a和b,Alice和Bob分别轮流在1~n中选位置,直到把所有位置都选一遍,Alice选的位置积分ai-bi,Bob选的位置积分bi-ai,最后Alice总积分为A,Bob总积分为B,Alice想最大化A-B,Bob想最小化A-B,问最后A-B是多少,可以发现无论是Alice选还是Bob选,对A-B的贡献都是ai-bi,所以把所有ai-bi加起来就是答案
第二题给了一个数字n(<=1e9),求n以内的特殊的完全平方数的个数,要求这个数字本身是完全平方数,且可以按十进制数位拆成左右两个完全平方数,直接枚举完全平方数判断一下
第三题给了一个长度为n的数组a,问k取1,2,...,n的时候,数组中相邻元素的差不超过k的、最长的子数组的长度是多少,这个按照相邻元素差的大小从小到大遍历,合并两边的数组,记录最大长度
#阿里笔试#
基础多选
NLP单选 2题
NLP多选 2题
编程题 3题(50分)
编程题占分最少的一场,也是题目最简单的一场
第一题给了两个长度为n的数组a和b,Alice和Bob分别轮流在1~n中选位置,直到把所有位置都选一遍,Alice选的位置积分ai-bi,Bob选的位置积分bi-ai,最后Alice总积分为A,Bob总积分为B,Alice想最大化A-B,Bob想最小化A-B,问最后A-B是多少,可以发现无论是Alice选还是Bob选,对A-B的贡献都是ai-bi,所以把所有ai-bi加起来就是答案
第二题给了一个数字n(<=1e9),求n以内的特殊的完全平方数的个数,要求这个数字本身是完全平方数,且可以按十进制数位拆成左右两个完全平方数,直接枚举完全平方数判断一下
第三题给了一个长度为n的数组a,问k取1,2,...,n的时候,数组中相邻元素的差不超过k的、最长的子数组的长度是多少,这个按照相邻元素差的大小从小到大遍历,合并两边的数组,记录最大长度
#阿里笔试#
全部评论
为什么第二题我这么写超时😵
第一道题还能这么想,膜拜佬
相关推荐
点赞 评论 收藏
分享
昨天 15:40
The University of Melbourne Java 点赞 评论 收藏
分享
03-25 23:31
Nanyang Technological University 算法工程师 点赞 评论 收藏
分享