주어진 배열의 원소들을 d만큼 왼쪽으로 밀어서 회전시키는 문제다
방법 1. 각 원소를 d만큼 왼쪽으로 이동. 하지만 d가 10만 이하라 최악의 경우 10만 번 반복하니까 안좋다.
방법 2. 파이썬의 list slice를 사용해서 d기준으로 index d뒤에 있는 원소를 먼저 리스트에 넣고 d보다 앞에 있는 것들을 붙여주면 된다.
a[d:] + a[:d]
#!/bin/python3
import math
import os
import random
import re
import sys
# Complete the rotLeft function below.
def rotLeft(a, d):
return a[d:] + a[:d]
if __name__ == '__main__':
fptr = open(os.environ['OUTPUT_PATH'], 'w')
nd = input().split()
n = int(nd[0])
d = int(nd[1])
a = list(map(int, input().rstrip().split()))
result = rotLeft(a, d)
fptr.write(' '.join(map(str, result)))
fptr.write('\n')
fptr.close()