2161 : 카드 2

서희찬·2021년 9월 23일
0

백준

목록 보기
43/105

문제

코드

import sys 
from collections import deque # 덱 불러오기 
num = int(sys.stdin.readline())
queue = deque()

for i in range(num):
    queue.append(i+1)

while len(queue)!=1:
    queue.popleft() #왼쪽 반환 및 제거 
    queue.append(queue.popleft())


print(queue.pop()) # 오른쪽 반환 및 제거 

해설

처음에는 list를 이용해서 큐 접근을 했는데 시간 초과가 계속 떠서 deque을 불러오는 방법을 배웠다

from collections import deque
는 덱을 불러오는 것인데
여기에는 많은 내장 함수가 들어가있다
이 함수들을 활용하니 완전 편한거같다..짱짱맨...

문제 풀이는 간단하다 그저 숫자들을 순서대로 배열에 넣어주고 그것을 하나빼고 하나뒤로 넣고 총 길이가 1이될때 까지 무한반복하는 문제이다

profile
Carnegie Mellon University Robotics Institute | Research Associate | Developing For Our Lives, 세상에 기여하는 삶을 살고자 개발하고 있습니다

0개의 댓글

관련 채용 정보