Algorithm/Codility

Lesson2-2. CyclicRotation

hamaganatanadda 2019. 6. 20. 22:37

L : https://app.codility.com/programmers/lessons/2-arrays/cyclic_rotation/

 

Q : 배열을 받아서 K만큼 숫자를 회전한다.

 

A : 배열의 길이와 회전되어야 하는 값의 나머지로 배열위치를 가져옴. 

 

[Delphi]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function solution(A: array of longint; N: longint; K: longint): Results;
var 
  result: Results;
  arrval: array of longint;
  ii : longint;
begin
  SetLength(arrval, N);
  
  for ii := 0 to N-1 do 
  begin 
    arrval[(ii+K) mod N] := A[ii];
  end;
 
  result.A := arrval;
  result.N := N;
  exit(result);
 
end;
cs

 

※ 수정할 부분이 있으면 알려주세요. 로직 짠 후 구글링으로도 참고합니다. 

'Algorithm > Codility' 카테고리의 다른 글

Lesson3-3. TapeEquilibrium  (0) 2019.06.22
Lesson3-2. PermMissingElem  (0) 2019.06.20
Lesson3-1. FrogJmp  (0) 2019.06.20
Lesson2-1. OddOccurrencesInArray  (0) 2019.06.20
Lesson1. BinaryGap  (0) 2019.06.19