본문 바로가기

알고리즘/백준

[BOJ] [Python] 2292번 : 벌집

 

규칙 찾기

 

 

벌집의 라인마다 숫자의 끝만 보면 수열이 보인다.

1, 7, 19, 37, 61 ...

A(n) = A(n-1) + 6 * (n-1)

 

즉, 6 6x2 6x3 6x4 ...인 등차수열을 포함하고 있다.

 

 

num = int(input())
count = 0
first = 1

while(True):
    second = first + (6 * count)

    if(num == 1):
        print(1)
        break

    if first < num <= second:
        print(count + 1)
        break

    else:
        first = second
        count += 1

 

 

규칙을 쉽게 못 찾아서 오래걸린 점이 아쉽다.