Notice
Recent Posts
Recent Comments
Link
jyamethyst21 님의 블로그
백준 24723번- '녹색거탑' (PYTHON 풀이) 본문
문제:


예시가 잘 나와있어서 특별하게 설명할 건 없고 N이 주어졌을 때 그 위치에서부터 바닥까지 갈 수 있는 경우의 수를 출력하면 된다.
이러한 경우의 규칙만 찾으면 코드를 쓰는 건 어렵지 않다. 풀이 파트에서 설명해보겠다.
풀이:
N = int(input())
if N == 1:
print(2)
else:
print(2**N)
우선 정답 코드는 다음과 같다.
처음에 규칙 찾기 전에는 N이 1일 경우는 예시에 나와있어서 그대로 적었는데 이렇게 if문 쓸 필요 없이 바로 print로 하면 된다.
자세히 살펴보면 녹색 거탑은 N층짜리이며, 맨 윗층에서 시작해서 아래층까지 내려온다. 각 층에서는 왼쪽과 오른쪽 중 하나만 고를 수 있다. 즉, 이는 각 층마다 2가지 선택지를 갖는, 총 N번의 선택 과정이 있는 구조를 의미한다.
예를 들어, 1층일 때 가능한 경로는 왼쪽(L), 오른쪽(R)이니 경우의 수는 2가지이며, 2층일 땐 1층에서 L을 고를 때 다음층도 L 또는 R, 1층에서 R을 고를 때 다음층도 L 또는 R 이런식으로 4가지의 경우의 수가 발생한다.
3층일 때도 이런식으로 하면 LLL, LLR, LRL, LRR, RLL, RLR, RRL, RRR 총 8가지의 경우의 수가 나온다.
여기까지 해서 규칙을 살펴보면 결과적으로, 2^N 만큼 숫자가 커진다는 것을 알 수 있고 이를 코드로 작성하면 위와 같이 작성된다.
마치 동전 뒤집기 경우의 수와 비슷하다. (2가지니까)
'CODING 💻' 카테고리의 다른 글
| 백준 25192번- '인사성 밝은 곰곰이' (PYTHON 풀이) (1) | 2025.11.02 |
|---|---|
| 백준 1010번- '다리 놓기' (PYTHON 풀이) (0) | 2025.11.01 |
| 백준 11050번- '이항 계수 1' (PYTHON 풀이) (0) | 2025.10.30 |
| 백준 10870번- '피보나치 수 5' (PYTHON 풀이) (0) | 2025.10.29 |
| 백준 28279번- '덱 2' (PYTHON 풀이) (0) | 2025.10.28 |
