zoukankan      html  css  js  c++  java
  • js 数组中寻找两个值相加等于目标值, 三个值相加等于目标值

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        
    </body>
    <script type="text/javascript">
        let nums = [1, 5, 2, 4, 6, 8];
        let target = 12;
    
        function twoNum (nums, target){
            let arr = [];
            for(let i = 0;i < nums.length;i++){
                let otherNum = target - nums[i];
                let secondNum = nums.slice(i+1).filter(val => val == otherNum);
                if(secondNum.length > 0){
                    arr.push(i, nums.indexOf(secondNum[0]));
                }
            }
            return arr;
        }
        
        function three(nums, target){
            let resultArr = [];
            for(let i = 0;i < nums.length;i++){
                let otherNum = target - nums[i];
                let arr = twoNum(nums.slice(i+1), otherNum);
                if(arr.length > 0){
                    resultArr.push(i, nums.indexOf(nums.slice(i+1)[arr[0]]), nums.indexOf(nums.slice(i+1)[arr[1]]));
                    break;
                }
            }
            return resultArr
        }
    
        three([1, 4, 8, 12, 19, 16, 26], 24);
    </script>
    </html>
  • 相关阅读:
    Paperfolding HDU
    I
    2020年8月11日第一次组队训练
    2018ICPC南京I. Magic Potion
    【贪心】纪念品分组
    【贪心】删数问题
    【排序】排名
    小X与队列
    B.T.B.F.
    2018浙江理工大学迎新赛——决赛
  • 原文地址:https://www.cnblogs.com/Mr-Rshare/p/12612193.html
Copyright © 2011-2022 走看看