몇 개의 방을 지나가느냐 즉 어느 층에 있느냐와 일맥상통하는 이야기이다.
한 층을 더 나아가기 위해서는 6, 12, 18 ...의 겹이 있다. 이 겹보다 크면 층 += 1을 해주는 형식이다.
위의 발상을 코드로 표현한다.
//백준 2292, 벌집
#include <iostream>
int main(){
int N;
std::cin >> N;
int i{1};
int six{1};
int layer{1};
while(N > six){
six += i*6;
++i;
++layer;
}
std::cout << layer;
return 0;
}