SW/알고리즘

C++ : 프로그래머스 : 완주하지 못한 선수 : 풀이

얇은생각 2019. 5. 27. 07:30
반응형

풀이


#include <string>
#include <vector>
#include <iostream>
#include <algorithm>

using namespace std;

string solution(vector<string> participant, vector<string> completion) {
std::sort(participant.begin(), participant.end());
std::sort(completion.begin(), completion.end());

int num = 0;

for(int i=0; i < participant.size(); i++){
if( participant[i] != completion[i]){
return participant[i];
}
}

return participant[participant.size()];
}


실행 결과

정확성 테스트
테스트 1 통과 (0.01ms, 3.82MB)
테스트 2 통과 (0.01ms, 3.88MB)
테스트 3 통과 (0.27ms, 3.99MB)
테스트 4 통과 (0.52ms, 4.02MB)
테스트 5 통과 (0.58ms, 3.96MB)
효율성 테스트
테스트 1 통과 (37.32ms, 12.2MB)
테스트 2 통과 (54.63ms, 16.6MB)
테스트 3 통과 (70.58ms, 19.6MB)
테스트 4 통과 (74.38ms, 21.4MB)
테스트 5 통과 (78.58ms, 21.4MB)
채점 결과
정확성: 50.0
효율성: 50.0
합계: 100.0 / 100.0


총평

우선 두 벡터를 정렬하였습니다. 그 후 두 벡터가 같지 않을 때까지 포문을 돌립니다. 같지 않은 경우 해당 원소를 리턴해줍니다. 만약 포문이 끝까지 돌은 경우에는 마지막 요소 값을 반환하는 방식으로 풀어보았습니다.

반응형