CS/알고리즘_문제풀이(파이썬)

역방향 밀기

Jedy_Kim 2021. 5. 23. 13:53
728x90

문제

길이가 n인 수열이 있다. 이 수열의 모든 수가 왼쪽으로 k 칸 씩 밀린 결과를 출력하여라.

단, 이 수열의 모양은 다음 그림처럼 원형이라서 n-1번 인덱스의 다음 칸은 0번이다. 즉, 0번이 있던 값은 n-1번으로 이동한다.

입력

첫 줄에 n, k 가 주어진다.

두 번째 줄에 수열을 구성하는 수 n 개가 주어진다.

(3 ≤ n, k ≤ 1,000, 1 ≤ 수열을 구성하는 수 ≤ n)

출력

첫 줄에 밀린 후의 수열을 출력한다.

입력의 예 1

5 2

2 3 1 5 4

출력의 예 1

1 5 4 2 3

입력의 예 2

5 1

1 3 5 4 2

출력의 예 2

3 5 4 2 1

입력의 예 3

7 3

3 7 4 5 2 6 1

출력의 예 3

5 2 6 1 3 7 4

입력의 예 4

11 10

1 9 8 4 5 2 3 7 6 11 10

출력의 예 4

10 1 9 8 4 5 2 3 7 6 11

 

#코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
n, k = map(int, input().split())
getInfo = list(map(int, input().split()))
 
def push():
  global getInfo
  temp = getInfo[0]
  for i in range(1len(getInfo)):
    getInfo[i-1= getInfo[i]
  getInfo[-1= temp
  
 
 
for _ in range(k):
  push()
  
for i in getInfo:
  print(i, end=' ')
  
  
 
cs

 

반응형

'CS > 알고리즘_문제풀이(파이썬)' 카테고리의 다른 글

1차원 조회  (0) 2021.05.23
밀기 알고리즘 -- 파이썬 데크(deque)  (0) 2021.05.23
정방향 밀기  (0) 2021.05.23
단순 밀기  (0) 2021.05.23
NN단표  (0) 2021.05.21