[구름톤 챌린지] 완벽한 햄버거 만들기 (JS)

hhkim·2023년 8월 17일
0

Algorithm - JavaScript

목록 보기
105/188
post-thumbnail

풀이 과정

  1. 가장 큰 값 구하기: Math.max()
  2. 입력받은 재료에 대해 반복
  3. 1의 결과에 다다를 때까지 이전 값과 같거나 큰지 검사
  4. 1의 결과에 다다른 후에는 이전 값과 같거나 작은지 검사
  5. 3, 4의 매 과정마다 맛의 정도를 결과에 더함
    이때 조건을 만족하지 않으면 결과를 0으로 만들고 반복문 빠져나오기

코드

const readline = require('readline');
let rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});
let input = [];
rl.on('line', (line) => {
  input.push(line.trim());
  if (input.length === 2) {
    rl.close();
  }
});

rl.on('close', () => {
  const items = input[1].split(' ').map(Number);
  const max = Math.max(...items);
  let prev = 0;
  let isIncrease = true;
  let result = 0;
  for (const item of items) {
    if ((isIncrease && item < prev) || (!isIncrease && item > prev)) {
      result = 0;
      break;
    }
    result += item;
    prev = item;
    if (item === max) isIncrease = false;
  }
  console.log(result);
  process.exit();
});

🤔

변수가 너무 많은가...

0개의 댓글