SW/알고리즘

C++ : 프로그래머스 : 같은 숫자는 싫어 : 풀이

얇은생각 2019. 5. 31. 12:30
반응형

풀이


#include <vector>
#include <iostream>
#include <set>

using namespace std;

vector<int> solution(vector<int> arr)
{
vector<int> answer;
answer.push_back(arr[0]);
int del = 0;
for(int i = 1; i< arr.size(); i++ ){
int x = answer[del];
int y = arr[i];
if( x == y ){
continue;
} else{
answer.push_back(arr[i]);
del++;
}
}
return answer;
}




실행 결과

정확성 테스트
테스트 1 통과 (0.00ms, 3.88MB)
테스트 2 통과 (0.01ms, 3.8MB)
테스트 3 통과 (0.01ms, 3.88MB)
테스트 4 통과 (0.01ms, 3.76MB)
테스트 5 통과 (0.01ms, 3.8MB)
테스트 6 통과 (0.01ms, 3.84MB)
테스트 7 통과 (0.01ms, 3.78MB)
테스트 8 통과 (0.01ms, 3.91MB)
테스트 9 통과 (0.01ms, 3.82MB)
테스트 10 통과 (0.01ms, 3.77MB)
테스트 11 통과 (0.00ms, 3.92MB)
테스트 12 통과 (0.01ms, 3.78MB)
테스트 13 통과 (0.01ms, 3.79MB)
테스트 14 통과 (0.01ms, 3.76MB)
테스트 15 통과 (0.01ms, 3.78MB)
테스트 16 통과 (0.01ms, 3.76MB)
테스트 17 통과 (0.01ms, 3.88MB)
효율성 테스트
테스트 1 통과 (24.24ms, 19.7MB)
테스트 2 통과 (20.62ms, 19.5MB)
테스트 3 통과 (12.36ms, 19.5MB)
테스트 4 통과 (24.86ms, 19.6MB)
채점 결과
정확성: 71.9
효율성: 28.1
합계: 100.0 / 100.0



총평

먼저 처음 값을 푸시합니다. 그 다음 값이 같은지 여부를 확인을 해줍니다. 만약 같다면 continue로 넘어갑니다. 만약 다르다면 벡터에 푸시를 해줍니다. 인덱스를 나누어 접근하여 해결하였습니다.

반응형