[백준 10250] ACM 호텔.js

쿼카쿼카·2022년 8월 15일
0

알고리즘

목록 보기
2/67

코드

const input = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');

// const input = ['2', '6 12 10', '30 50 30'];

for(let i=1; i<input.length; i++) {
  const target = input[i].split(' ');
  const [height, guest] = [target[0], target[2]];
  const roomNum = guest%height === 0 ? parseInt(guest / height) : parseInt(guest / height) + 1;
  const floor = guest % height === 0 ? String(height) : String(guest % height);

  console.log(floor + roomNum.toString().padStart(2,'0'));
}

풀이

  • 역시나 shift 사용 안 하고 for문을 i=1부터 시작
  • 뒤에 붙는 호실(roomNum)은 꼭대기 층을 고려하여 guest%height === 0 일 때는 guest/height를 한다.
  • 층(floor) 역시 꼭대기 층일 때는 height 출력
  • padstart를 이용해 호실이 한 자리일 때 0으로 채워주기

어려웠던 점 및 칭찬

  • 꼭대기 층을 고려 안 해서 5번은 틀렸다. 백준 제발 왜 틀렸는 지라도 알려줘....
  • 리액트를 너무 열심히 하다보니 구조분해 할당과 삼항 연산자를 물 흐르듯 자연스럽게 사용한다^__^
profile
쿼카에요

0개의 댓글