https://programmers.co.kr/learn/courses/30/lessons/12906
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include
#include
using namespace std;
vector solution(vector arr)
{
vector answer;
vector picks;
for (int i = 0; i < arr.size(); i++)
{
if (arr[i] == arr[i + 1])
{
arr[i] = -1;
}
if (arr[i] == -1)continue;
picks.push_back(arr[i]);
}
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
cout << "Hello Cpp" << endl;
return picks;
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
처음엔 예전에 풀었던 카카오 인형 뽑기를 생각하고
이중 for문 + pop_back을 사용했지만 효율성 테스트를 통과하지 못했다.
이중 for문 때문인 줄 알고 for문 1회 + erase()를 사용했지만 역시 효율성 테스트를 통과하지 못했다.
벡터의 삽입, 삭제가 속도가 느리다는건 알고 있었지만 이렇게 체감한 것은 처음인 것 같다.
상단에 올린 코드가 통과하지 못하면 리스트를 사용해보려고 했는데 다행히 삽입만 하니 테스트를 통과했다.
삽입과 삭제를 둘 다 하니 속도가 매우 느려졌던 것 같다.
'프로그래머스 - 내 풀이 > 프로그래머스 Lv1' 카테고리의 다른 글
프로그래머스 / 연습문제 / 나누어 떨어지는 숫자 배열 (0) | 2020.04.28 |
---|---|
프로그래머스 / 연습문제 / 가운데 글자 가져오기 (1) | 2020.04.28 |
프로그래머스 / 탐욕법 / 체육복 (1) | 2020.04.24 |
프로그래머스 / 정렬 / K번째 수 (0) | 2020.04.24 |
프로그래머스 / 카카오 개발자 겨울 인턴십 / 크레인 인형뽑기 (1) | 2020.04.22 |