笔试算法题-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即可。
全部评论
相关推荐
Aeside:测开 == 后端,没必要关注自己过去能接什么活,你应该关注自己能偷到什么产出,反正正职写得内容你学到简历上就是你的,不懂就直接问正职。
查看21道真题和解析 点赞 评论 收藏
分享
