728x90
SMALL
n = int(input())
menu = list(map(int, input().split()))
s = [False] * (n+1)
cnt, ans = 0, 0
for item in menu:
if not s[item]:
s[item] = True
cnt += 1
else:
s[item] = False
cnt -= 1
ans = max(ans, cnt)
print(ans)
- s 리스트의 해싱을 활용해 각 메뉴가 선택되었는지를 확인할 수 있게끔 하였습니다.
- Maximum Tracking하는 방식은 다른 문제들을 풀 때에도 유용하게 사용될 수 있습니다.
728x90
LIST
'알고리즘 문제 > 랜덤 마라톤 (solved.ac)' 카테고리의 다른 글
🥈 19621번: 회의실 배정 2 (0) | 2024.06.29 |
---|---|
🥈 4096번: 팰린드로미터 (1) | 2024.06.28 |
🥈 11931번: 수 정렬하기 4 (2) | 2024.06.27 |
🥉 14696번: 딱지놀이 (0) | 2024.06.27 |
🥉 2909번: 캔디 구매 (4) | 2024.06.26 |