181860
Link
https://school.programmers.co.kr/learn/courses/30/lessons/181860 (opens in a new tab)
Answer
JavaScript
function solution(arr, flag) {
return arr.reduce(
(prev, num, i) =>
flag[i]
? [...prev, ...new Array(num * 2).fill(num)]
: prev.slice(0, -num),
[]
);
}
function solution(arr, flag) {
let X = [];
flag.forEach((el, index) => {
if (el) {
for (let i = 0; i < arr[index] * 2; i++) {
X.push(arr[index]);
}
} else if (!el) {
for (let i = 0; i < arr[index]; i++) {
X.pop();
}
}
});
return X;
}