# 문제
# 풀이
왼쪽 오른쪽에서 본다는 말이 리스트의 담겨진 트로피를 시작인덱스부터 볼 것인지 마지막 인덱스부터 볼 것인지를 뜻한다.
내가 생각해낸 로직은 간단하다. 큰게 있으면 뒤에꺼가 안보인다. max값을 관리하면서, 리스트를 순회하면서 최대값이 갱신되었을때 count를 1씩해주는 방법을 이용한다.
LEFT와 RIGHT경우가 존재하기 때문에 두번 돌려주도록 하자.
# 코드
import sys
def solve():
N = int(sys.stdin.readline().strip())
arr = []
for _ in range(N):
tropi = int(sys.stdin.readline().strip())
arr.append(tropi)
max = 0
cnt = 0
# 순회하면서 max값이 갱신되면 보이는 거임
# LEFT
for item in arr:
if item > max :
cnt +=1
max = item
print(cnt)
# RIGHT
max = 0
cnt = 0
for item in reversed(arr):
if item > max :
cnt +=1
max = item
print(cnt)
if __name__ == '__main__':
solve()
# 마치며
'•알고리즘(Algorithm ) > 문제풀이' 카테고리의 다른 글
[백준-1543] 문서 검색 파이썬 풀이 (0) | 2022.08.09 |
---|---|
[백준-1568] 새 파이썬 풀이 (0) | 2022.08.09 |
[백준-2751] 수 정렬하기2 파이썬 (0) | 2022.08.09 |
[백준-7490] 0만들기 파이썬 (0) | 2022.08.08 |
[백준-1074] Z 파이썬 풀이 (0) | 2022.08.08 |