[python] 백준 1668번 트로피 진열알고리즘/백준2021. 9. 15. 01:28
Table of Contents
문제 요약 및 풀이
간단하게 그림으로 그려서 보여드리겠습니다.
졸라맨 같은 사람은 문제에 나오는 민식이 입니다. 민식이가 선반을 왼쪽에서 보느냐 오른쪽에서 보느냐에 따라서
보이는 트로피의 개수가 다르기 때문에 이렇게 그림을 그려봤습니다.
선반을 오른쪽에서 왼쪽으로 바라봤다면 낮은 트로피부터 높은 트로피까지 총 5개가 보이는 것이고
반대로 선반을 왼쪽에서 오른쪽으로 바라봤다면 높은 트로피가 가장 먼저 보이게 되기 때문에 총 1개가 보이게 됩니다.
그 점을 생각하고 풀어주시면 됩니다.
완성된 코드!!👍😊
처음 코드
N = int(input())
h = []
max = -1
count = 0
for i in range(N):
h.append(int(input()))
if max < h[i]:
max = h[i]
count += 1
print(count)
max = -1
count = 0
h.reverse()
for i in h:
if max < i:
max = i
count +=1
print(count)
중복된 코드 제거 후의 코드
def count(h):
max = -1
count = 0
for i in h:
if max < i:
max = i
count += 1
return count
N = int(input())
h = []
for i in range(N):
h.append(int(input()))
print(count(h))
print(count(reversed(h)))
'알고리즘 > 백준' 카테고리의 다른 글
[python] 백준 11723번 집합 (0) | 2021.09.16 |
---|---|
[python] 백준 1094번 막대기 (0) | 2021.09.16 |
[python] 백준 1075번 나누기 (0) | 2021.09.13 |
[python] 백준 1977번 완전제곱수 (8) | 2021.09.09 |
[python] 백준 1453번 피시방 알바 (2) | 2021.09.07 |
@펄찌 :: Pearl's Story
펄의 일상이 궁금한 사람 요기~
즐거운 하루 되셨으면 좋겠습니다😊