๐จ ๋ฐ๋ก
๐ shift๋ฅผ ์ฐ๋ฉด ์๊ฐ์ด๊ณผ๊ฐ ๋ ๊น๋ด ์ธ๋ฑ์ค๋ก ํด์ฃผ์๋๋ฐ ๋ค๋ฅธ ํ์ด๋ฅผ ๋ณด๋ shift, pop์ผ๋ก ํ์ด์ฃผ์ด๋ ๊ด์ฐฎ์ ๊ฒ ๊ฐ๋ค.
๐ ์กฐ๊ฑด๋ค์ ์ ์ค์ ํด์ฃผ์ด์ผํ๋ค...!
์ฝ๋
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n');
const test = +input.shift();
let answer = "";
for (let i = 0; i < test; i++) {
const func = input[i * 3 + 0];
const len = +input[i * 3 + 1];
const arr = JSON.parse(input[i * 3 + 2]);
let front = 0;
let rear = len - 1;
let zero = false;
let error = false;
for (let j = 0; j < func.length; j++) {
if (func[j] === "R") {
const temp = front;
front = rear;
rear = temp;
} else {
if (len === 0 || zero) {//๊ธธ์ด๊ฐ 0์ผ ๋, D๋ฅผ ์คํํ ๊ฒฝ์ฐ
error = true;
break;
}
if (front < rear) front++;
else if (front > rear) front--;
else zero = true; //๊ธธ์ด๊ฐ 0์ด ๋จ
}
}
if (error) {
answer += "error\n";
continue;
}
if (zero) {
answer += "[]\n";
continue;
}
if (front <= rear) answer += `[${arr.splice(front, rear - front + 1)}]\n`;
else if (front > rear)
answer += `[${arr.splice(rear, front - rear + 1).reverse()}]\n`;
}
console.log(answer);