笔试算法题-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即可。
样例:输入:l=[1,2,3,4],k=2;输出:res=4*3+2*1=14;
解题思路:贪心策略+模拟,先对l进行排序,然后从后往前遍历,每次遇到满足条件(l[i]-l[j])<k,计算两个的乘积并将两个元素对应的idx设置为false,不可再次访问,最后返回res即可。
全部评论
相关推荐
今天 12:59
福州大学 Java 点赞 评论 收藏
分享
02-24 19:45
西南大学 后端工程师
程序员小白条:简历写的有点太多了,一般两页是实习经历比较多的情况下,要么自己有一些有影响力的开源项目,如果你走软件,硬件没必要实习,学校安排总是没区分度的,央国企最好有中大厂实习,另外学历比较重要,不是都要求硕士的,技术会比互联网要求低一些 点赞 评论 收藏
分享
点赞 评论 收藏
分享
智元机器人成长空间 321人发布