첫번째 코드
코드의 한줄만 바꿔서 문제에 맞는 코드로 바꾸는 문제였다.
처음에 보고 느낀 것은 total_usage = 0 이므로 계속 0이 반복해서 들어가서 결과가 똑같아질 것 같은 것,
그래서 total_usage를 바꿔야겠다 라는 생각을 했다.
def solution(storage, usage, change):
total_usage = usage
for i in range(len(change)):
usage = total_usage * change[i]/100
total_usage += usage
if total_usage > storage:
return i
return -1
오류
두번째 코드
생각해보니까 계속된 하루하루 사용량은 total_usage에서 건드는 것이 아니라, usage에서 건드는 것이 맞다.
즉 total_usage는 전체 값만으로 생각하고
usage를 하루하루로 생각하여 계산하고 total_usage에 더하는 방식을 사용하면 되잖앙?
def solution(storage, usage, change):
total_usage = 0
for i in range(len(change)):
usage = usage * change[i]/100 + usage
total_usage += usage
if total_usage > storage:
return i
return -1
통과!
다시 문제 풀이 시작해야지! 늘어지지 말자!!
링크