[SWEA] - 5097. 회전

jjiani·2021년 3월 6일
0

SWEA

목록 보기
16/20
post-thumbnail

swea - 문제 링크

for tc in range(1, int(input()) + 1):
    N, M = map(int, input().split())
    arr = list(map(int, input().split()))

    i = 0
    while i < M:
        back = arr.pop(0)
        arr.append(back)
        i += 1

    print('#{} {}'.format(tc, arr[0]))

🔑 M번 만큼 배열 맨 앞의 숫자를 뒤로 보내주는 작업을 하기위해 while문을 사용했다.

from collections import deque

for tc in range(1, int(input()) + 1):
    N, M = map(int, input().split())
    arr = deque(list(map(int, input().split())))

    i = 0
    while i < M:
        back = arr.popleft()
        arr.append(back)
        i += 1

    print('#{} {}'.format(tc, arr[0]))

💡 deque을 사용하는 방법이 있다. pop(0)보다 popleft()가 더 빠르다고 하여 사용했는데 문제 제출했을때는 pop(0)가 더 빨랐다. 왜일까? 아마 테스트케이스로 준 예제의 크기가 크지 않아 pop(0)가 더 빨랐던 것일까? 흠🤔 더 알아보는 걸로 하자...!

profile
¡Bienvenido a mi velog!🐣

0개의 댓글