首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
れもんじゆん
2020-12-08 17:40
曲阜师范大学 C++
关注
已关注
取消关注
怎么快速求数列(A[i]+A[j])*(j-i)的最大值
注:1.数列的长度能达到1e6
2.j>i
提示
全部评论
推荐
最新
楼层
Maddison10
北京市十一学校
希望能对您有帮助
10
回复
分享
发布于 2020-12-08 19:20
Maddison10
北京市十一学校
可以用李超树维护凸壳
10
回复
分享
发布于 2020-12-08 19:19
Maddison10
北京市十一学校
😁😁😁
9
回复
分享
发布于 2020-12-08 19:20
Maddison10
北京市十一学校
😂😂😂
9
回复
分享
发布于 2020-12-08 19:20
Maddison10
北京市十一学校
您看看理解吗?
9
回复
分享
发布于 2020-12-08 19:20
Maddison10
北京市十一学校
🤣🤣🤣
9
回复
分享
发布于 2020-12-08 19:20
Maddison10
北京市十一学校
直接上李超树就ok了
9
回复
分享
发布于 2020-12-08 19:19
Maddison10
北京市十一学校
然后推式子化成kX+b的形式
9
回复
分享
发布于 2020-12-08 19:19
Maddison10
北京市十一学校
主要有一个A[i]*j的东西
9
回复
分享
发布于 2020-12-08 19:19
Maddison10
北京市十一学校
这个李超树随便维护吧
9
回复
分享
发布于 2020-12-08 19:19
牛客407119042号
复旦大学 算法工程师
由于同时和a[j]和j有关所以不能单纯维护当作斜率相关的问题来做 本问题是经典的决策单调性问题。 考虑我们选择j时如果j1>j2且a[j1]>a[j2]显然j2时候不如j1,因此我们用单调队列筛掉这些不符合条件的j2,最后得到一个单调下降子序列。 同理,选择i时如果i1<i2且a[i1]>a[i2]显然i2时候不如i1,帅选后i的选择区域也将在一个单调上升子序列中。 现在在一个单调上升子序列中选择i,一个单调下降子序列中选择j。 接下来考虑j对i1和i2的值f(i1,j)=(A[i1]+A[j])*(j-i1),f(i2,j)=(A[i2]+A[j])*(j-i2)作差 不妨设i1>i2 f(i1,j)-f(i2,j)=j*(A[i1]-A[i2])-(A[i1]*i1-A[i2]*i2)-A[j]*(i1-i2) =(A[i1]-A[i2],i1-i2)·(j,-a[j])-(A[i1]*i1-A[i2]*i2) 显然,随着j的增大f(i1,j)-f(i2,j)单调递增,也就是说,对于任意i1,i2存在一个在j0之后 (f(i1,j)-f(i2,j))*(j-j0)>=0 故我们在i待选择的单调上升子序列中的每个相邻元素计算其分界的j即可。具体实现就是用一个单调栈维护每个分界点,每次对相邻两个元素二分其分界点,然后维护单调栈。 1.得到i的候选序列I={i1,i2...ip} 2.得到j的候选序列J={j1,j2...jq} 3.初始单调栈s为空 4.枚举x,根据f(ix,j)-f(ix+1,j)的算出分界点jx,将jx比栈顶元素小,不断把元素踢出,然后加入jx 5.根据单调栈中的元素,得到每个序列J最优的决策ix,计算,并求最大值。 PS:这个问题转化称这样可能更好理解,二维的点集A={(i,a[i])},B={(i,-a[i])},在A中取一个点,在B中取一个点,最后要求其面积最大,当然最后做法本质没区别
3
回复
分享
发布于 2020-12-08 21:25
happypeople
湖南工业大学 C++
(A[i]+A[j])*(j-i) = A[i]*i - j*A[j] 很明显,j*A[j]是一个定值,枚举i=[1,n],然后记录前缀最小的 j*A[j]就行了
点赞
回复
分享
发布于 2020-12-08 18:27
暂无评论,快来抢首评~
相关推荐
昨天 08:41
北京邮电大学 嵌入式工程师
努力这么久好像只是为了"平庸"
记得以前有个新闻,大意是说有个女孩子以她的成绩考入北大清华没问题。但她从小参加各种社会活动,深受曾留学法国的母亲“生命的意义在于体验最多而不是最好”影响,决定放弃高考,申请包括哥大在内的大学,并获得成功。新闻下面附上了一张那个女孩子的照片,还很清秀,于是这则新闻就获得大量转载,一片褒扬之声。我没有任何的仇富仇美仇优心理,不过在这条新闻下面我看到的最好的评论还是:我没有皇城根下的家,也没有留过洋的爸妈。我只能咬着牙拼命学习,在千军万马中挤破头,换来一个国内普通的大学,而我还要拼命努力,才能换来一个普通的人生。但这条新闻把千万个我们这种普通家庭却从没放弃努力的孩子,当成了傻瓜。 在上海,复旦...
点赞
评论
收藏
分享
今天 22:02
哈尔滨工业大学 深度学习
3/12携程机考选择题/编程题
在实现一个大规模DBSCAN算法的分布式版本时,为了优化查找每个点的eps-邻域内的邻居这一核心步骤,数据工程师通常会采用哪种技术手段来避免全量数据点的两两比较,从而显著降低计算复杂度? A. 对特征进行PCA降维 B. 使用空间索引结构 C. 增加min_samples参数的值 D. 对数据点进行随机抽样 在机器翻译任务中,RNN通常采用哪种输入输出模式? A. 多对多 (Many-to-Many) B. 一对多 (One-to-Many) C. 多对一 (Many-to-One) D. 一对一 (One-to-One) 在风控模型任务中,需要模型输出可解释的结果(如“用户违约原因为...
携程笔试
点赞
评论
收藏
分享
03-06 19:42
蚌埠坦克学院 Java
半年混了个小金牌🎖️
得吃了
点赞
评论
收藏
分享
03-02 17:33
已编辑
河南工学院 Python
学院本,这简历有救吗
🐭🐭是学院本,没有实习过😭3.2号更新一波简历,目前已经有一家进二面了,一面线上面被拷打了一个多小时,后面和负责人开始聊天。😭
点赞
评论
收藏
分享
03-09 15:59
已编辑
河北工业职业技术学院 Java
我这个简历 春招有机会吗 还是在这转正
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
三月创作集结令:创作狂欢季,等你开场🎉
2.1W
2
...
面试官视角聊聊:AI大模型岗从业务面到HR面全流程
5826
3
...
我怕自己努力了这么久,最后还是毕业即失业
4439
4
...
一个好的简历 Agent 项目,必须具备的几个关键因素(附项目推荐)
4269
5
...
字节后端一面
3949
6
...
清华本硕找实习ing
3798
7
...
腾讯后台开发一面
3785
8
...
转转一面(二面挂)
3721
9
...
转转-java开发-一面
3357
10
...
27 暑期实习 腾讯 后台开发 一面(2026.3.4)
3329
创作者周榜
更多
正在热议
更多
#
今天你投了哪些公司?
#
77644次浏览
1535人参与
#
你都用AI做什么
#
33462次浏览
313人参与
#
你感受到金三银四了嘛?
#
41925次浏览
442人参与
#
秋招感动瞬间
#
117655次浏览
542人参与
#
虽然0面试,但今天___,夸夸自己
#
4198次浏览
108人参与
#
携程笔试
#
115909次浏览
718人参与
#
春招 / 实习投递,你最焦虑的一件事
#
36633次浏览
772人参与
#
如果给AI员工评绩效,我的答案是……
#
5312次浏览
130人参与
#
哪一刻你对工作祛魅了?
#
12816次浏览
131人参与
#
找工作,你都让AI帮你做什么?
#
3693次浏览
139人参与
#
实习学不到东西正常吗?
#
5062次浏览
81人参与
#
滴滴求职进展汇总
#
313281次浏览
2487人参与
#
刚工作的你,踩过哪些坑?
#
3204次浏览
77人参与
#
为了秋招你都做了哪些准备?
#
34275次浏览
544人参与
#
今年找实习到底有多难?
#
11252次浏览
116人参与
#
签约/解约注意事项
#
889032次浏览
4727人参与
#
快手工作体验
#
312464次浏览
2914人参与
#
苦尽甘来时,再讲来时路
#
74137次浏览
958人参与
#
AI时代下,你的岗位要求有什么变化?
#
5742次浏览
113人参与
#
2023毕业生求职有问必答
#
238638次浏览
1676人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务