Program Solving

최근글


새댓글


Hot Deal


python 분류

HackerRank ‘Left Rotation’ Solution

컨텐츠 정보

본문

``` #!/bin/python3 import math import os import random import re import sys # Complete the rotLeft function below. def rotLeft(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() ``` # Solution ``` # Complete the rotLeft function below. def rotLeft(a, d): return a[d:] + a[:d] ``` # 생각 ``` 배열의 [1,2,3,4,5] 가 2회전 하면 [3,4,5,1,2]가 됨. ``` 처음에는 loop돌려서 하는 방법을 생각했지만 해답을 보니 생각보다 단순 했음. a[d:] # d 번째 뒤에 있는 배열 모두 a[:d] # d 번째 앞에 있는 배열 모두 # 시간 복잡도 시간 복잡도: O(N) 공간 복잡도: O(N)

관련자료

댓글 0
등록된 댓글이 없습니다.
전체 4 / 1 페이지
RSS
번호
제목
이름