반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


1. [백준] 백준 30923번 크냑과 3D 프린터 파이썬(Python)

1) 문제번호 : 30923

 

2) 문제 출처

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

 

30923번: 크냑과 3D 프린터

어느 날, 크냑은 지인으로부터 3D 프린터를 선물 받았다. 평소에 3D 프린터에 대해 관심이 많았던 크냑은 들떴으나, 도대체 이걸로 무엇을 만들어야 할지 감을 잡을 수 없었다. 그래서 일단 눈에

www.acmicpc.net

 

2. 풀이

- 이 문제는 간단한 구현 문제이다.

- 겉넓이를 구하기 위해서는 직육면체에서 6개의 면적을 구하면 된다. 근데, 주의 사항은 직육면체가 겹쳐져 있으니 겹친 부분을 구하는 방법은 N번째에서 N+1번째 높이를 뺀 절대값이 면적이 된다.

 

3. 소스 코드

import sys
input = sys.stdin.readline

N = int(input().rstrip())
heightList = list(map(int, input().split()))

fbLength = sum(heightList) * 2 # 앞뒤 넓이
tbLength = N * 2 # 위아래 넓이
lrLength = heightList[0] + heightList[-1] # 왼쪽, 오른쪽 넗이

reLength = 0

for i in range(0, N-1)  : 
    reLength += abs(heightList[i] - heightList[i+1])

print(fbLength + tbLength + lrLength + reLength)

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기