https://programmers.co.kr/learn/courses/30/lessons/68646
숫자 세개가 있을때 가운데 숫자가 앞의 숫자나 뒤의 숫자보다 작으면 살아남을 수 있음
1 2 3 가능 , 2 1 3 가능, 1 3 2 불가능
맨 앞과 맨 뒤는 무조건 제외 가능
function solution(a) {
let fMin = a[0]; // 앞에서부터 작은 값
let bMin = a[a.length-1]; // 뒤에서 부터 작은 값
let alive = [];
for(let i=1; i<a.length-1; i++){
if(a[i]<fMin){
alive.push(a[i]); // a[i]가 앞에서부터 작은 값보다 작다면 살 수 있음.
fMin=a[i] // 제일 작은값 변경
}
}
for(let i =a.length-2; i>0; i--){
if(a[i]<bMin){
alive.push(a[i]);
bMin = a[i];
}
}
return [...new Set([...alive])].length+2; // 중복제거 후 개수 + 맨 앞과 맨 뒤
}