[백준 2292 / Python] 벌집

임윤희·2025년 4월 23일

벌집

🔍 알고리즘 분류

  • 수학

💡 문제 풀이

  • 아래와 같은 규칙으로 테두리가 생김
    - 끝 숫자를 보면 6, 12, 18, 24..씩 6의 배수만큼 차이가 증가
1
2-7
8-19
20-37
38-61
  • 끝 숫자가 n보다 작을 때까지 배열에 넣고 배열의 길이 출력

📄 코드

"""
1
2-7
8-19
20-37
38-61
"""

n = int(input())
edge = [1]
diff = 0
while edge[-1] < n:
    diff += 6
    edge.append(edge[-1] + diff)
    
print(len(edge))
  • 시간복잡도: O(N)O(\sqrt N)

0개의 댓글