728x90
반응형
목차
https://www.acmicpc.net/problem/2493
문제
문제 구현 방향
끝부터 순회하여서 스택에 저장해 놓았다가 꺼내면서 해결하는 문제이다.
코드 구현
const input = require("fs")
.readFileSync("./dev/stdin", "utf-8")
.trim()
.split("\n");
let N = +input[0];
let ans = Array(N).fill(0);
let arr = input[1].trim().split(" ").map(Number);
let idxArr = arr.map((item, idx)=>[idx+1, item]);
let stack =[];
for(let i= idxArr.length-1; i >=0; i--){
if(stack.length === 0){
stack.push(idxArr[i]);
}
else{
while(1){
if(stack.length===0)break;
let [topIdx, top] = stack.pop();
if(top< idxArr[i][1]){
ans[topIdx-1] = idxArr[i][0];
}
else{
stack.push([topIdx, top]);
break;
}
}
stack.push(idxArr[i]);
}
}
let answer = ans.map((item)=>item).join(" ");
console.log(answer);
반응형
'백준 문제풀이 > Nodejs' 카테고리의 다른 글
[백준][dp] 1937 욕심쟁이 판다 NodeJs 구현 (0) | 2025.01.09 |
---|---|
[백준][스택] 1406 에디터 NodeJs 구현 (0) | 2025.01.04 |
[백준][브루트 포스] 1759 암호 만들기 NodeJs 구현 (0) | 2024.12.30 |
[백준][슬라이딩 윈도우] 1593 문자해독 NodeJs 구현 (0) | 2024.12.26 |
[백준][브루트포스] 1107 리모컨 NodeJs 구현 (0) | 2024.12.25 |