반응형
https://level.goorm.io/exam/43230/%EA%B0%9C%EA%B5%AC%EB%A6%AC-2/quiz/1
구름LEVEL
코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이외에 여러 가지 프로그래밍 언어로 풀이할 수 있습니다.
level.goorm.io


도착점에서부터 시작점으로 역산하면서 '한 칸 이동하는 데 필요한 값'을 갱신하는 문제.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# -*- coding: utf-8 -*- | |
# UTF-8 encoding when using korean | |
import sys | |
n = int(sys.stdin.readline()) | |
arr = list(map(int, sys.stdin.readline().split())) | |
# 보유해야 할 힘의 양 | |
answer = 0 | |
# 뒤에서부터 계산하면 | |
for idx in range(len(arr)-1, 0, -1): | |
# 한 칸 이동하는 데 필요한 p의 양 | |
need_p = arr[idx] - arr[idx-1] | |
# 햔제 보유한 힘의 양보다 많이 필요하면 answer 값 업데이트 | |
answer = max(need_p, answer) | |
# p손실 보충을 위한 값 | |
answer += 1 | |
# 0에서 첫 번째 돌까지 이동하는 것 계산 | |
need_p = arr[0] | |
answer = max(need_p, answer) | |
# 만약 첫 번째 돌까지 이동하는 데 필요한 p값이 제일 클 경우, p손실 보충을 위해 +1 | |
if answer == need_p: | |
answer += 1 | |
print(answer) | |
반응형
'프로그래밍 > 코딩테스트 문제풀이' 카테고리의 다른 글
[Python] 구름. 그룹 지정 (0) | 2020.05.04 |
---|---|
[Python] 구름. 잡초 제거 (0) | 2020.05.01 |
[Python] 구름. 소수 고리 (1) | 2020.04.28 |
[Python] 구름. 근묵자흑 (0) | 2020.04.24 |
[Python] 프로그래머스. 서울에서 경산까지 (Level 4) (0) | 2020.04.23 |