백준(BaekJoon)

[BaekJoon/C] No.24723 : 녹색거탑

ekdnjs510 2024. 7. 30. 14:36
728x90

https://www.acmicpc.net/problem/24723

No.24723 문제.

 

오답이유

 처음 풀었을 때 탑에서 내려오는 과정을 생략하고 바닥으로 내려올 수 있는 맨 아래 층의 면을 계산하는 코드를 작성했습니다. 이 부분에서 항상 인접한 아래층의 부분에서만 내려올 수 있다는 조건을 간과하여 오답으로 채점된 것 같습니다.

 

/*오답코드*/
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
	int N;
	int greentop;

	scanf("%d", &N);

	greentop = N * 2;

	printf("%d", greentop);
}

 

 

 

다시 풀어보자면...

 

문제해석

 

층이 형성되기 전 거탑의 상태를 1로 두고 N층 입력받으면 각 층마다 내려올 수 있는 부분 2를 곱해 값을 출력해줍니다.

 

 

소스코드 & 문제풀이

 

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void)
{
	int N;
	int greentop=1; // 거탑의 바닥상태

	scanf("%d", &N); 

	 // N층 만큼 형성된 거탑에서 반복문을 통해 내려오면서 값을 계신합니다.
	for (int i = 1; i <= N; i++) {
		greentop *= 2; // 항상 인접한 아래층은 2군데이므로 2를 곱해줍니다.
	}

	printf("%d", greentop); // 초록거탑 완성!
}

 

 

제 입출력 결과

 

728x90