ACM 호텔(10250) - JS

박정호·2022년 3월 11일
0

BAEKJOON

목록 보기
51/57
post-thumbnail

원리를 알면 생각보다 쉽게 풀리는 문제였습니다.

  1. 우선 testNum에는 테스트케이스의 개수를 저장합니다.
  2. 첫번째 반복문을 통해 테스트케이스 각각의 세 가지 값을 arr 배열에 저장합니다.
ex) 
2
6 12 6
30 50 72
의 경우
arr = [['6','12','6'],['30','50','72']]로 만들어줍니다.
  1. 두번째 반복문에서는 H,W,N 각각을 인덱스자리 마다 설정해줍니다.
  2. Y는 층수를 구하는 값으로 손님의 순서수를 호텔 층수로 나눈 값이 손님방의 층수가 됩니다. 이때 예외가 있는데, 6의 배수 번째마다 오시는 손님들은 6 나누기 호텔 층수, 즉 나머지 값이 0이 되어 층수가 0층으로 설정됩니다. 따라서 조건문을 통해 나머지값이 0이면 호텔 최대 층 수가 Y값이 되게 설정합니다.
  3. 그리고 X는 호수를 말하는데, 손님의 순서수에서 호텔층수를 나눈 반올림한 값이 설정됩니다.
  4. 마지막 Y와X 값을 합쳐줄때는 문자열로 변환후 합치고 X의 경우에는 일의자리 수일 경우 0을 포함해야하므로 padStart()를 이용합니다.

문제를 풀기 전에 구해야하는 조금의 수학문제를 해결해놓고 코드로 풀어쓰면 더 쉽게 해결할 수 있습니다.

profile
기록하여 기억하고, 계획하여 실천하자. will be a FE developer (HOME버튼을 클릭하여 Notion으로 놀러오세요!)

0개의 댓글