코딩/백준 - c++

[백준] 2292번 벌집 - c++

코딩 코딩 코오딩 2022. 3. 12. 22:19

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

 

2292번: 벌집

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

www.acmicpc.net

#include <iostream>

using namespace std;

int main() {

	int n, answer=1;
	int cnt = 0;
	int temp=1;
	cin >> n;
	while (true) {
		if ( temp-(6 * cnt)<= n && n<= temp) {
			
			break;
		}
		cnt++;
		answer++;
		temp =temp + 6 * cnt;

	}
	cout << answer;
}

그냥 둘러싸고 있는 갯수만 파악하면 된다. 끝

현재 값보다 커지기만 해도 답으로 해도 된다.

while (true) {
		if ( n<= temp) {
			
			break;
		}
반응형