728x90
문제
풀이
이번 문제는 배열의 좌 우를 검증하는 문제로써 간단한 구현 문제이다.
코드
const readline = require('readline');
let rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
let n = null;
let doing = false;
let input;
const sol = (arr) => {
let top = [Math.max(...arr), undefined];
let leftTemp = [top[0], undefined];
let rightTemp = [top[0], undefined];
top[1] = arr.indexOf(top[0]);
leftTemp[1] = top[1];
rightTemp[1] = top[1];
for(let i = top[1] - 1; i >=0; i--){
if(leftTemp[0] < arr[i]) return 0;
leftTemp[0] = arr[i];
leftTemp[1] = i;
}
for(let i = top[1] + 1; i < n; i++){
if(rightTemp[0] < arr[i]) return 0;
rightTemp[0] = arr[i];
rightTemp[1] = i;
}
return arr.reduce((acc, cur) => acc + cur, 0);
};
rl.on('line', (line) => {
if(n === null) n = +line
else{
input = line.split(' ').map(Number);
doing = true;
console.log(sol(input));
}
if(doing) rl.close();
});
rl.on('close', () => {
process.exit()
})
728x90
'코딩 테스트 > 구름 Goorm' 카테고리의 다른 글
[Node.js] 구름 level 2_계수기 만들기 (0) | 2024.06.16 |
---|---|
[Node.js] 구름 level 2_해외 주식 투자 (0) | 2024.06.15 |
[Node.js] 구름 Level 3_ 단풍나무 (0) | 2024.06.15 |
[Nodejs] 구름_사은품 교환하기 (0) | 2024.06.13 |
[Node.js] 단어장 만들기 (0) | 2024.06.12 |