728x90
📚문제
📝풀이
# 2292번 벌집
n = int(input())
honey_comb = 1
cnt = 1
while n > honey_comb:
honey_comb += cnt * 6
cnt += 1
print(cnt)
수학 문제는 문제에서 패턴이나 규칙을 찾아내는 게 중요한것 같다
한 번 보이지 않으면 정말 막막하고 풀이방향이 떠오르지 않는다
💡수학문제 -> 그림이나 표에서 규칙을 잘 찾자
벌집의 개수가 1개(1층) -> 7개(2층) -> 19개(3층) ->...로 6의 배수만큼 늘어난다(벌집 1층이 쌓인다 = 횟수가 1 늘어난다)
그리고 벌집의 개수가 늘어난 시점에서의 벌집의 층 수가
최소 몇 개의 방을 지나가는지의 수다 ( 시작하는 방도 횟수로 포함해야하므로 )
무슨 말이냐면
1) 노란색 -> 1번 움직여서 갈 수 있는 방 ( 총 횟수 2 )
2) 초록색 -> 2번 움직여서 갈 수 있는 방 ( 총 횟수 3 )
3) 파란색 ->3번 움직여서 갈 수 있는 방 ( 총 횟수 4 )
.
.
.
가 된다는 얘기이다
728x90
'Python(알고리즘,문제풀이) > BOJ(Bronze II)' 카테고리의 다른 글
백준 / 1075번 / 나누기 / Python / 브루트포스 알고리즘 (0) | 2024.01.01 |
---|---|
백준 / 1009번 / 분산처리 / Python / 시간복잡도 (1) | 2023.12.31 |
백준 / 2798번 / 블랙잭 / Python (1) | 2023.12.05 |
백준 / 2231번 / 분해합 / Python / 브루트포스 알고리즘 (0) | 2023.11.30 |
백준 1978번 / 소수찾기 / Python (0) | 2023.11.27 |