阿里淘天集团笔试 0902 题解分享

#阿里#单选和多选还挺难的。。。
编程题不能在本地ide写差评
T1
给一个长度为N的数组,求a_i+a_j=a_k^a_l的四元对数(i那么枚举个a_j 从左往右,然后动态维护右边a_k^a_l=x的数量,由于a<=100,所以a_k^a_l<=128,只要开个128的数组维护
然后枚举ai+a_j,直接乘上右边的a_k^a_l=a_i+a_j的数量就行了,复杂度O(n^2)
T2
长度为n的数组, 1<=a_i<=m ,a_i%i==0 ,(a1+a2+..a_n )%n==0 ,n,m<=1000,求方案数
直接dp[i][j]表示安排了前i位,然后(a1+a2+...a_i)%n==j的方案数,由于枚举a_i必须是i的倍数
那么复杂度就是调和级数O(nmlnm)
T3
字符串,有多少个子序列,首尾一样
对于一对相同的字母,假设他们坐标为i和j, 以他们为首尾的子序列共有2^(j-i-1)
所以只要把相同的字母的下标搞到一起来选,枚举左端点,同时维护所有右端点到当前左端点的2^(j-i-1)之和,
左端点向右移动,就减掉这一段,剩下的总和除以2^(j-1),这里预处理一下幂次%mod和幂次的逆元%mod就行了
如果不会逆元不想搞除法,就让左端点从右往左移动,这样就先乘后加上一段新的,比较方便
复杂度O(n)
#阿里##阿里秋招##秋招##阿里笔试##阿里淘天##秋招笔试#
全部评论
太猛了
2 回复 分享
发布于 2023-09-02 15:54 上海
学到了,每题都觉得是dp,但没一个dp出来的我
2 回复 分享
发布于 2023-09-02 16:05 江苏
你是真神 交白卷的我惭愧
2 回复 分享
发布于 2023-09-02 22:58 陕西
太有实力了
1 回复 分享
发布于 2023-09-02 16:21 北京
😅最后一个题我也存储了相同下标,然后脑子里就只有暴力了,还是太菜了我
点赞 回复 分享
发布于 2023-09-02 15:51 四川
xd太有实力了
点赞 回复 分享
发布于 2023-09-02 15:53 湖北
最后一个也是存储相同的下标,然后i从第0个下标表示左端点,j从第1个下标表示右,然后去算2^(j-i-1),为啥是0
点赞 回复 分享
发布于 2023-09-02 15:56 北京
太强了大佬
点赞 回复 分享
发布于 2023-09-02 16:12 湖北
牛的
点赞 回复 分享
发布于 2023-09-02 16:15 广东
🐮
点赞 回复 分享
发布于 2023-09-02 16:23 山东
有代码吗?题解看不懂
点赞 回复 分享
发布于 2023-09-02 17:19 北京
求一个题目
点赞 回复 分享
发布于 2023-09-02 21:13 北京
佬,牛呀
点赞 回复 分享
发布于 2023-09-04 14:50 广东
请问是上面岗位的题呢
点赞 回复 分享
发布于 2023-09-05 22:16 山东
佬是真牛
点赞 回复 分享
发布于 2023-09-07 20:52 北京

相关推荐

点赞 评论 收藏
分享
6 22 评论
分享
牛客网
牛客企业服务