두 가지 방법으로 풀 수 있다. (deque(덱), 배열을 하나씩 뒤로 밀고 맨 앞으로 맨 뒤의 요소를 삽입하는 것( O(k*n))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import java.util.Deque;
import java.util.ArrayDeque;
import java.util.Iterator;
class Solution {
public int[] solution(int[] A, int k) {
// write your code in Java SE 8
Deque<Integer> dq = new ArrayDeque<Integer>();
for (int i = 0; i < A.length; i++) dq.add(A[i]);
while(k > 0) {
dq.addFirst(dq.peekLast());
dq.pollLast();
}
k--;
}
Iterator it = dq.iterator();
int idx = 0;
while(it.hasNext()) {
}
return A;
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
'Codility > JAVA' 카테고리의 다른 글
FlogJump (0) | 2020.02.16 |
---|---|
TapeEquilibrium (0) | 2020.02.15 |
OddOccurencesInArray (0) | 2020.02.15 |
Binary Gap (0) | 2020.02.15 |