본문 바로가기

PS/백준

[BOJ] 백준 2292 벌집 (Swift)

반응형

문제

https://www.acmicpc.net/problem/2292

 

2292번: 벌집

위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌

www.acmicpc.net

풀이

문제에 그림이 있어서 그림을 보고 어떻게 풀어야할지 이해해봅시다.
먼저 그림에 선을 그어서 방을 어떻게 나누는지 확인해봅시다.

image

발로 그린 그림이지만.. 잘 살펴보면

  • 1 (1) = 1개
  • 2 ~ 7 (6) = 2개
  • 8 ~ 19 (12) = 3개
  • 20 ~ 37 (18) = 4개
  • ...

인 것을 확인할 수 있습니다.

따라서 1부터 시작해서 n보다 작을 때 까지 6 * i를 더해줍니다. (i는 계속해서 늘어남 6, 12, 18... 이므로)
이제 n보다 크거나 같게 된다면, i번 만큼의 방을 지난 것이므로 i를 출력해주면 됩니다.

소스코드

후기

벌집을 잘 나누어서 규칙을 찾으면 쉽게 풀 수 있는 문제인 것 같습니다.

반응형