-
[SWEA D3] 1206. [S/W 문제해결 기본] 1일차 - View, Python 풀이알고리즘/SWEA 2022. 12. 20. 20:08728x90
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
#건물의 좌,우 높이 비교 #해당 건물당, 2이상 널널하면 조망권 count for tc in range(1, 11): N = int(input()) #건물의 갯수 heights = list(map(int, input().split())) #건물들 높이 answer = 0 #조망권 확보된 세대 카운트 #모든 건물 경우에 대해서, for i in range(2, N-2): left = 0 right =0 #해당 빌딩 왼쪽 두칸 비교 (해당 빌딩보다 작은만큼 조망권 확보) #왼쪽의 건물 두채중에 큰거 고름 -> 해당 빌딩에서 값 빼기 -> 왼쪽 조망권 확보된 세대 if heights[i] >= heights[i-1] >= heights[i-2]: left = heights[i] - heights[i-1] if heights[i] >= heights[i-2] > heights[i-1]: left = heights[i] - heights[i-2] #오른쪽 두칸 비교 #오른쪽 건물 두채중에 큰거 고름 -> 해당 빌딩에서 값 빼기 -> 오른쪽 조망권 확보된 세대 if heights[i] >= heights[i + 1] >= heights[i + 2]: right = heights[i] - heights[i + 1] if heights[i] >= heights[i + 2] > heights[i + 1]: right = heights[i] - heights[i + 2] #왼쪽, 오른쪽 조망권 확보된 세대중에 더 작은거 고르기 if left < right: answer += left else: answer += right print(f"#{tc}", answer)
728x90반응형'알고리즘 > SWEA' 카테고리의 다른 글
[SWEA D2] 1208. [S/W 문제해결 기본] 1일차 - Flatten, Python 풀이 (0) 2022.12.20 [SWEA] D2 - Python 풀이 (0) 2022.12.20 [SWEA D2-1928] Base64 Decoder - Python (0) 2022.11.13