def solution(prices):
answer = [0] * len(prices)
for i in range(len(prices)):
for j in range (i+1, len(prices)):
if prices[i] <= prices [j]:
answer[i] += 1
else:
answer[i] += 1
break
return answer
for문을 돌려서 하나씩 꺼내서 다음 수와 비교
앞 수가 뒷 수보다 작으면 cnt+1증가시킨다
다음 앞수도 같이 봐서 앞수가 뒷수보다 작으면 cnt+1증가시킨다.
앞수가 뒷수보다 크기가 큰 경우는 1만 세준다.
무식하게 모든 경우의 수를 탐색하면서 요구조건에 충족되는 결과만을 가져오는 알고리즘
내가 생각한 풀이 흐름은 브루트 포스였다.
그냥 무식하게 모든 배열을 한 번씩 돌아보면서 하나하나 세는 방법
당연히 효율은 떨어질거라 생각했는데 역시 이 방법은 효율성이 떨어졌다.
그래서 원래 목적인 스택/큐로도 한 번 풀이보기로 했다.
스택은 가장 나중에 들어온 자료가 가장 먼저 처리되는 LIFO(Last-In-First-Out) 자료구조이다.
출구가 하나 밖에 없는 상자에 데이터를 차곡차곡 쌓는다고 생각하면 된다.
파이썬은 리스트로 스택을 흉내낸다고 한다.
# 빈 스택(리스트) 초기화
stack = []
stack
stack = [1,2,3]
stack.append(4)
print(stack)
#결과
#[1,2,3,4]
stack = [1,2,3]
stack.pop()
print(top)
print(stack)
#결과
#3 제일 위에 있는 값이 꺼내진다.
#[1,2]
stack = [1,2,3]
top = stack[-1]
print(top)
print(stack)
#3
#[1,2,3]
Stack/Queue로도 풀이 해봐야지..(나중에 추가)