최대 1 분 소요

part43. 요격 시스템

js ver 1.0

function solution(targets){
    // [[11, 13], [10, 14], [5, 12], [4, 5], [4, 8], [3, 7], [1, 4]]
    // start: undefined end: undefined     missile: 0
    // start: 11        end: 13            missile: 1
    // start: 11        end: 13            missile: 1
    // start: 11        end: 12            missile: 1
    // start: 4         end: 5             missile: 2
    // start: 4         end: 5             missile: 2
    // start: 4         end: 5             missile: 2
    // start: 1         end: 4             missile: 3

    targets.sort((a,b) => b[0] - a[0]);

    let start, end;

    return targets.reduce((missile, [s, e]) => {
        if (e > start || s >= start) {
            end = Math.min(end, e);
            start = Math.max(start, s);
        } else {
            start = s;
            end = e;
            missile++;
        }

        return missile;
    }, 0)
}

실행결과_js ver 1.0


업데이트: