请教下,couponTypes是种类,couponsNums是数量,能用什么方法能实现:例如:金额9980,用里面的数据算出等于9980的所有组合,没有相等的就取接近9980的
JS怎么实现求某个数的和的所以组合
请教下,couponTypes是种类,couponsNums是数量,能用什么方法能实现:例如:金额9980,用里面的数据算出等于9980的所有组合,没有相等的就取接近9980的
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- web修理工 2022-05-24 09:28关注
获得2.50元问题酬金 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <script> let arr = [9980, 998, 499, 198, 99, 50, 30, 20, 10]; let arr1 = [1, 1, 5, 7, 13, 5, 15, 13, 11, 46]; let result = []; let combination = [] for (let i = 0; i < arr.length; i++) { for (let j = 0; j < arr1.length; j++) { combination.push({ arr: arr[i], arr1: arr1[j], value: arr[i] * arr1[j] - 9980 }) } } let minvalue = Math.min.apply(null, combination.map(item => Math.abs(item.value))) result = combination.filter(item => Math.abs(item.value) == minvalue) console.log(combination, result, '===') </script> </body> </html>
解决 无用评论 打赏 举报
悬赏问题
- ¥20 指导如何跑通以下两个Github代码
- ¥15 大家知道这个后备文件怎么删吗,为啥这些文件我只看到一份,没有后备呀
- ¥15 C++为什么这个代码没报错运行不出来啊
- ¥15 一道ban了很多东西的pyjail题
- ¥15 关于#r语言#的问题:如何将生成的四幅图排在一起,且对变量的赋值进行更改,让组合的图漂亮、美观@(相关搜索:森林图)
- ¥15 C++识别堆叠物体异常
- ¥15 微软硬件驱动认证账号申请
- ¥15 GPT写作提示指令词
- ¥20 根据动态演化博弈支付矩阵完成复制动态方程求解和演化相图分析等
- ¥15 华为超融合部署环境下RedHat虚拟机分区扩容问题