일곱난장이

minho·2021년 9월 7일
0

code

function solution(arr){
                let answer=arr;
                const arr_sum = arr.reduce((sum, currValue)=> {
                    return sum + currValue;
                }, 0);
                console.log(arr_sum);
                for(let i = 0; i < 8; i++) {
                    for(let j = i+1 ; j < 9; j++){
                        if(arr[i] + arr[j] === arr_sum - 100){
                            console.log(j);
                            console.log(i);
                            arr.splice(j,1);
                            arr.splice(i,1);
                            //splice를 j 먼저 해줘야 하는 이유:
                            // 만약 i를 먼저 빼게 되면 arr의 index에 변화가 생기므로
                            // j의 index가 영향을 받지 않게 i를 먼저 빼준다.
                            break
                        }
                    }
                }
                return answer;
            }    
            let arr=[20, 7, 23, 19, 10, 15, 25, 8, 13];
            console.log(solution(arr));

알게된점

splice

-> splice( cursor, 제거할수, 추가할수);

EX)

  • 하나도 제거하지 않고, 2번 인덱스에 "drum" 추가

    var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
    var removed = myFish.splice(2, 0, 'drum');
    // myFish is ["angel", "clown", "drum", "mandarin", "sturgeon"]

  • 하나도 제거하지 않고, 2번 인덱스에 "drum"과 "guitar" 추가

    var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
    var removed = myFish.splice(2, 0, 'drum', 'guitar');
    // myFish is ["angel", "clown", "drum", "guitar", "mandarin", "sturgeon"]

  • 3번 인덱스에서 한 개 요소 제거

    var myFish = ['angel', 'clown', 'drum', 'mandarin', 'sturgeon'];
    var removed = myFish.splice(3, 1);
    // removed is ["mandarin"]
    // myFish is ["angel", "clown", "drum", "sturgeon"]

  • -2번 인덱스에서 한 개 요소 제거

    var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
    var removed = myFish.splice(-2, 1);
    // myFish is ["angel", "clown", "sturgeon"]
    // removed is ["mandarin"]

  • 2번 인덱스를 포함해서 이후의 모든 요소 제거

    var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
    var removed = myFish.splice(2);
    // myFish is ["angel", "clown"]
    // removed is ["mandarin", "sturgeon"]

profile
Live the way you think

0개의 댓글