Fascination
article thumbnail

[문제]

 

Left Rotation | HackerRank

Given an array and a number, d, perform d left rotations on the array.

www.hackerrank.com

 

 

[문제 설명]

- 예제를 보면 입력 받은 횟수 만큼 맨 앞의 원소가 왼쪽에서 나와 오른쪽으로 들어가고 있음

 

 

[문제 풀이]

- 왼쪽에서 나와 오른쪽으로 들어가는 방식 -> 큐를 생각

- 백터로 반환 형식이 지정되어 있으므로 vector의 stl 사용

  > v.front(): 맨 앞의 원소를 반환

  > v.push_back(): 원소를 뒤에 넣음

  > v.erase(): 해당 위치의 원소를 지움

 

 

[코드]

vector<int> rotateLeft(int d, vector<int> arr) {
    int temp;
    for(int i=0; i<d;i++){
        temp = arr.front();
        arr.push_back(temp);
        arr.erase(arr.begin());
    }
    return arr;
}

 

 

[실행결과]

profile

Fascination

@euna-319

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!