티스토리 뷰
programmers.co.kr/learn/courses/30/lessons/42584
코딩테스트 연습 - 주식가격
초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00
programmers.co.kr
분명 전에 풀었던 문제인데 못풀었다?!?!?!
바로 다음 초의 주식이 작아지더라도, 1초동안은 유지한걸로 치는걸 감안해서 작성했더니 오답이 나온다.
def solution(prices):
answer = [0] * len(prices)
for i in range(len(prices)):
cnt = 0
for j in range(i+1, len(prices)):
if prices[i] <= prices[j]:
cnt += 1
else:
if (j - i) == 1:
cnt = 1
break
answer[i] = cnt
return answer
그래서 j 인덱스 위치를 탐색하면 우선 cnt를 +1한 후, 주식 가격이 떨어지면 for문을 break하도록 했다.
def solution(prices):
answer = [0] * len(prices)
for i in range(len(prices)):
for j in range(i+1, len(prices)):
answer[i] += 1
if prices[i] > prices[j]:
break
return answer
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
프로그래머스 level 2 - 더 맵게 (힙 Heap) (0) | 2020.11.18 |
---|---|
프로그래머스 level 2 - 땅따먹기 (0) | 2020.11.18 |
프로그래머스 level 3 - 네트워크 (DFS/BFS) (0) | 2020.09.16 |
프로그래머스 level 2 - 기능개발 (스택/큐) (0) | 2020.09.14 |
프로그래머스 level 2 - 프린터 (스택/큐) (0) | 2020.09.14 |
댓글