백준온라인저지

2292번 벌집

wonjjong 2020. 7. 31. 12:34

문제 출처 : https://www.acmicpc.net/problem/2292

 

 

2292번: 벌집

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

www.acmicpc.net

 

 

풀이 과정

 

규칙을 찾는 문제였습니다. 거리가 커질수록 갈 수 있는 방의 개수가 이전 거리에서 갈 수 있는 방의 개수에서 6의 배수로 증가합니다. (1개 -> 6개 -> 12개)

 

따라서 방의 개수를 증가시키면서 방의 총합계를 계산하여 입력받은 n이 범위 내에 들어올 경우 반복문을 종료하고 그 거리를 출력하도록 코드를 작성했습니다.

 

 

소스 코드

더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
 
using namespace std;
 
int main() {
    int n;
    cin >> n;
   
    int ans = 1, t= 1 , c = 1;
    
    while(t < n) {
        t += c * 6;
 
        ++ans; ++c;
    }
    cout << ans << endl;    
}
cs

 

 

'백준온라인저지' 카테고리의 다른 글

백준 온라인 저지 1759번 암호 만들기  (0) 2022.10.05
1110번 더하기 사이클  (0) 2020.09.19
2193번 이친수  (0) 2020.07.30
10828번 스택  (0) 2020.05.21
4344번 평균은 넘겠지  (0) 2020.05.21