笔试算法题-day09

题目:给定一个列表,以及k,现在需要求解列表中每两个元素的乘积之和,每个元素只参与一次计算,且用于计算的两个元素的差值要小于k?
样例:输入:l=[1,2,3,4],k=2;输出:res=4*3+2*1=14;
解题思路:贪心策略+模拟,先对l进行排序,然后从后往前遍历,每次遇到满足条件(l[i]-l[j])<k,计算两个的乘积并将两个元素对应的idx设置为false,不可再次访问,最后返回res即可。
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-10 14:00
林子大了什么鸟都有啊,我觉得我说的已经很客气了,阴阳谁呢
牛客62656195...:应该不是阴阳吧?你第一次注册的时候boss就说你是牛人
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 12:18
点赞 评论 收藏
分享
弦五Strings:他之所以会举报你代课是因为在这种人眼里正常上课就是正义代课就是邪恶,典型二极管思维,处理方法就是私下沟通,你就说你自己家里经济困难或者家里父母生病什么之类的,需要去打工挣钱,用尽孝的正义对冲他认为的上课的正义,他可能就妥协了。
我的实习日记
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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