星环科技 java 8.30 笔试

1. 16
2. 0
3. 41

我太菜了,全都没什么好思路
全部评论
第一题a了 先考虑如何移动 需要找到大小在中间的两个数 记为l和r 以n为偶数为例 起始值是n/2 和n/2+1 操作一次 然后l-1 r+1 操作一次 以此类推 这样最大移动次数是n/2 然后考虑能少移动几次 可以看出来如果刚开始l的坐标小于r的坐标 其实是不用移动的 然后考虑下一对 如果l的坐标依然小于r的坐标 还要满足l的坐标小于l+1的坐标且r的坐标大于r-1的坐标 才可以不移动 可以看这个例子2314 只要遍历到一对需要移动的l和r 就跳出循环 因为后面的一定都需要移动 输出结果就行 n是奇数的思路一样 不过起始的l和r是n/2 n/2+2 还需要考虑他们和n/2+1的坐标关系判断能否不移动
3
送花
回复
分享
发布于 2023-08-30 22:20 陕西
第一题感觉我过了41,后来有优化思路没来得及写。我的思路是设置一个target数组(1-n顺序排列就行),用哈希表记录题目输入数组中每个数字的下标,设置轮数round,while循环,每次把输入数组中的n-round和round设置为-1。然后判断target[round:n-round]和输入数组中除了-1按序排列的数组。整体时间复杂度为round*N,应该能A
1
送花
回复
分享
发布于 2023-08-31 07:29 北京
秋招专场
校招火热招聘中
官网直投
卧槽跟你一样
1
送花
回复
分享
发布于 2023-08-31 08:52 四川
第一个咋想的
点赞
送花
回复
分享
发布于 2023-08-30 19:03 北京
三道题过了半道…
点赞
送花
回复
分享
发布于 2023-08-30 19:04 云南
好难啊,第二道题看题都头疼,有大佬分享一下第三题的思路吗
点赞
送花
回复
分享
发布于 2023-08-30 19:08 湖北
秋招吗
点赞
送花
回复
分享
发布于 2023-08-30 22:52 广东

相关推荐

头像
不愿透露姓名的神秘牛友
05-21 17:24
星环科技 大数据开发工程师 14k×14 本科985
点赞 评论 收藏
转发
1 收藏 评论
分享
牛客网
牛客企业服务