[프로그래머스] 230729 코딩테스트 연습

    SMALL

    1. 수열과 구간 쿼리 4

    function solution(arr, queries) {
        var answer = [];
        var idx_arr = []; // 인덱스 범위 구하기
        var filteredArray = []; // 필터된 인덱스 배열
        
        for (let i = 0; i <queries.length; i++) {
            const [s, e, k] = queries[i];
            if (arr.length>e && e>=s && s>=0) { // s, e 값에 대한 제한사항
                for ( let j = s; j<= e-s; j++) { // 인덱스 범위 구하기
                    idx_arr.push(j); 
                }
    
                // k의 배수인 i값 찾기
                filteredArray = idx_arr.filter (num => (num%k == 0))
                // ** 처음에 k 제약사항을 넣었더니 오류 발생 > 지워줌.
               
                filteredArray.forEach( data => {
                    arr[data] ++;
                })
            
                answer = arr;
                idx_arr=[];
                
            }   
        }
        
        return answer;
    }

     

     

    728x90

    댓글