JSFiddle - React, Tailwind, and code Playground
JavaScript
var stek = new Array(1024).fill(0);
var length = 0;
var size = 32;
// входящие данные
var input = new Array(32);
for (var i = 0; i < (size - 2) / 2; i++) {
input[i] = i;
input[(size - 2) / 2 + i] = i;
}
input[size - 1] = size;
input[size - 2] = size - 1;
// логика решения
function update(n) {
var isSet = false;
for (var i = 0; i < length; i++) {
if (stek[i] === n) {
isSet = true;
stek[i] = stek[i + 1];
} else if (isSet) {
stek[i] = stek[i + 1];
}
}
if (isSet) {
length--;
} else {
stek[length] = n;
length++;
}
}
// проход по массиву
for (var i = 0; i < size; i++) {
update(input[i]);
}
// результат
for (var i = 0; i < length; i++) {
//console.log('<br>число ' + (i + 1) + ' ' + stek[i]);
document.body.innerHTML += '<br>число ' + (i + 1) + ' ' + stek[i]
}