Algorithm Study/Python

[백준 파이썬] #14646 욱제는 결정장애야!!

728x90
반응형

Silver IV

# 14646 욱제는 결정장애야!!

https://www.acmicpc.net/problem/14646

 

14646번: 욱제는 결정장애야!!

욱제는 매일 세계사에 한 획을 그을만한 심각한 비결정론적 문제에 직면한다. 그렇다. 바로 저녁메뉴를 고르는 것이다. 매일 반복되는 중대한 선택에 지친 욱제는 N일 동안의 저녁메뉴를 미리

www.acmicpc.net

 

내가 작성했던 코드

# 시간초과

N = int(input())
bbopgi = list(map(int, input().split()))
pan = []
cnt = []

for i in bbopgi:
    if i not in pan:
        pan.append(i)
    elif i in pan:
        pan.remove(i)

    cnt.append(len(pan))
print(max(cnt))

 

스터디원 풀이

# PyPy3 채점 정답

N = int(input())
bbopgi = list(map(int, input().split()))
pan = []
cnt = 0
max_cnt = 0

for i in bbopgi:
    if i not in pan:
        pan.append(i)
        cnt += 1
    elif i in pan:
        cnt -= 1
    max_cnt = max(max_cnt, cnt)

print(max_cnt)

 

알게된 점

  • 일반적으로 list를 만들어서 푸는 것 보다는 특정 값으로 풀이하는게 시간, 메모리를 적게 사용한다
  • 효율적으로 코드를 작성하도록 염두하자