백준 2292번 벌집

김두현·2023년 2월 26일
1

백준

목록 보기
106/133
post-thumbnail

🔒[문제 url]

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


🪄전체 코드

#include <iostream>
using namespace std;
#define IAMFAST ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);

int n;

void INPUT()
{
    IAMFAST
    cin >> n;
}

void SOLVE()
{
    /*
     * 1번째 경계 <= 1 + 6 * 0 = 1
     * 2번째 경계 <= 1 + 6 * 1 = 7
     * 3번째 경계 <= 7 + 6 * 2 = 19
     * 4번째 경계 <= 19 + 6 * 3 = 37
     * ---
     * 점화식 : N번째 경계 = (N-1)번째 경계 + 6 * (N-1)
     */
    int limit = 1;//n번째 경계의 최댓값
    int ans;
    for(int i = 0; limit <= 1e9; i++)
    {
        limit = limit + 6 * i;//점화식
        if(n <= limit)
        {//가고자하는 방의 번호가 경계 안에 있다면
            ans = i+1;//그때의 N이 답이 된다.
            break;
        }
    }
    cout << ans;
}

int main()
{
    INPUT();
    SOLVE();
}

🥇문제 후기

GOLD5 미만 난이도는 알고리즘 및 풀이 설명을 주석으로 대체합니다.
주석을 참고해주세요.


💕오류 지적 및 피드백은 언제든 환영입니다. 복제시 출처 남겨주세요!💕
💕좋아요와 댓글은 큰 힘이 됩니다.💕
profile
I AM WHO I AM

0개의 댓글