#华为机试#
华为od机试,求数组内元素之和的最小绝对值,并返回那两个元素,过了65% case。其他案例不知道为什么没过,求各位大神解惑🙏
全部评论
排序,然后左右指针,如果(绝对值)左比右大:左++, 如果(绝对值)右比左大:右--;每次记住他们的和直到左超越右或者右超越左
4 回复 分享
发布于 2021-04-12 01:48
请问这是什么岗啊
2 回复 分享
发布于 2021-03-15 12:55
nums = list(map(int, input().split())) nums[:] = sorted(nums) list1 = [] l = 0 r = len(nums)-1 mins = nums[l]+nums[r] while r>l: if abs(nums[l] + nums[r])<abs(mins): mins = nums[l] + nums[r] list1.append([nums[l],nums[r]]) elif abs(nums[l])>abs(nums[r]): l+=1 else: r -=1 print(' '.join(map(str,list1)),mins) #这是复杂度为n的双指针
1 回复 分享
发布于 2021-08-04 22:15
list1 = list(map(int,input().split())) listfu = [] min1 = 10000000 listzheng = [] listij = [] for i in list1: if i<0: listfu.append(i) else: listzheng.append(i) for i in listfu: for j in listzheng: if i + j < min1: min1 = i + j listij.append([i,j]) print(' '.join(map(str,listij[-1])),min1) #print(listfu,listzheng)
1 回复 分享
发布于 2021-07-22 11:54
我的理解先排序,再二分查找
1 回复 分享
发布于 2021-03-18 20:13
把负数变成正数排序求差
点赞 回复 分享
发布于 2022-01-23 13:40
排序左右双指针,
点赞 回复 分享
发布于 2021-04-16 12:36
感觉是双指针
点赞 回复 分享
发布于 2021-04-12 22:17
用一个栈来维护
点赞 回复 分享
发布于 2021-04-12 09:46
滑动窗口
点赞 回复 分享
发布于 2021-04-11 17:23
昨天没参加 今天参加可以吗我看是试卷长期有效
点赞 回复 分享
发布于 2021-04-08 11:46
排序,然后左右双指针向中间走吧,如果往右走绝对值变小l++,否则r--
点赞 回复 分享
发布于 2021-04-07 19:35
请问下不是有监控吗,这怎么拍的题呀
点赞 回复 分享
发布于 2021-04-07 15:43
排好序 一个指针指向l 一个指针指向e 如果l和r对应的两数之和大于0 让l++ 否则r-- 每次移动指针后更新绝对值最小值
点赞 回复 分享
发布于 2021-04-04 08:55
你怎么知道通过65%case
点赞 回复 分享
发布于 2021-03-28 11:52
动态规划?
点赞 回复 分享
发布于 2021-03-27 23:27
这个应该先从小到大排序,全正数或全负数好说;否则找到负数和正数的分界点i,j,然后依次遍历下标0-i以及j-(length-1),按数***算结果,一定是负数最大值和正数最小值相加后绝对值最小,因此遍历是i--->0;j----->leng-1;
点赞 回复 分享
发布于 2021-03-27 15:48
我是95%
点赞 回复 分享
发布于 2021-03-22 23:30
两个列表 一个放正数 一个放负数 分别排序 都取最小 正数列表没有 取最小两位负数 负数列表没有 取最小两位正数
点赞 回复 分享
发布于 2021-03-19 10:56
qsort一下,然后从中间向两边查找
点赞 回复 分享
发布于 2021-03-18 10:17

相关推荐

04-01 16:02
已编辑
武汉工程大学 Java
牛客98843461...:处女面??我还种马面渣男面处男面呢
点赞 评论 收藏
分享
自从我室友在计算机导论课上听说了“刷&nbsp;LeetCode&nbsp;是进入大厂的敲门砖”,整个人就跟走火入魔了一样。他在宿舍门口贴了一张A4纸,上面写着:“正在&nbsp;DP,请勿打扰,否则&nbsp;Time&nbsp;Limit&nbsp;Exceeded。”日记本的扉页被他用黑色水笔加粗描了三遍:“Talk&nbsp;is&nbsp;cheap.&nbsp;Show&nbsp;me&nbsp;the&nbsp;code。”连宿舍聚餐,他都要给我们讲解:“今天的座位安排可以用回溯算法解决,但为了避免栈溢出,我建议用动态规划。来,这是状态转移方程:dp[i][j]&nbsp;代表第&nbsp;i&nbsp;个人坐在第&nbsp;j&nbsp;个位置的最优解。”我让他去楼下取个快递,他不直接去,非要在门口踱步,嘴里念念有词:“这是一个图的遍历问题。从宿舍楼(root)到驿站(target&nbsp;node),我应该用&nbsp;BFS&nbsp;还是&nbsp;DFS?嗯,求最短路径,还是广度优先好。”和同学约好出去开黑,他会提前发消息:“集合点&nbsp;(x,&nbsp;y),我们俩的路径有&nbsp;k&nbsp;个交点,为了最小化时间复杂度,应该在&nbsp;(x/2,&nbsp;y/2)&nbsp;处汇合。”有一次另一个室友低血糖犯了,让他帮忙找颗糖,他居然冷静地分析道:“别急,这是一个查找问题。零食箱是无序数组,暴力查找是&nbsp;O(n)。如果按甜度排序,我就可以用二分查找,时间复杂度降到&nbsp;O(log&nbsp;n)。”他做卫生也要讲究算法效率:“拖地是典型的岛屿问题,要先把连通的污渍区块都清理掉。倒垃圾可以用双指针法,一个指针从左往右,一个从右往左,能最快匹配垃圾分类。”现在我们宿舍的画风已经完全变了,大家不聊游戏和妹子,对话都是这样的:“你&nbsp;Two&nbsp;Sum&nbsp;刷了几遍了?”“别提了,昨天遇到一道&nbsp;Hard&nbsp;题,我连暴力解都想不出来,最后只能看题解。你呢?”“我动态规划还不行,总是找不到最优子结构。今天那道接雨水给我整麻了。”……LeetCode&nbsp;真的害了我室友!!!
老六f:编程嘉豪来了
AI时代还有必要刷lee...
点赞 评论 收藏
分享
评论
19
4
分享

创作者周榜

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