728x90

백준 2292 벌집

# 2292 벌집

N = int(input())
r = 1
q = 1
while True:
    if r == N:
        break
        
    for i in range(q*6):
        if r == N:
            break
        else:
            r += 1
    q += 1

print(q)

식을 만들어서 풀면 더 쉬울텐데 못해서 이차원배열 각 리스트에 요소를 채워 넣듯이

반복문을 만들어봤다.

벌집이 넓어질 수 록 층을 넘어간다고 생각하여 리스트를 만들면

1층 = [1]

2층 = [2, 3, 4, 5, 6, 7]

3층 = [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

4층 = [20 ~ 37]

이런 식으로 6개씩 요소가 증가하는 리스트가 만들어진다.

이 규칙을 이용해 N이 주어졌을 때 그 N이 들어있는 리스트의 층을 출력하면 된다.

728x90

'Algorithm' 카테고리의 다른 글

백준 4153 직각삼각형  (0) 2022.01.26
백준 2775 파이썬  (0) 2022.01.26
백준 2231 파이썬  (0) 2022.01.25
백준 14889 파이썬  (0) 2022.01.24
백준 1978 파이썬  (0) 2022.01.23

+ Recent posts