가티있는블로그

[프로그래머스] 완료하지 못한 선수

2019. 9. 14. 18:37 | 프로그래밍/코딩테스트 문제

프로그래머스에서 완료하지 못한 선수 문제를 해결했다.

해시 항목에 포함되어 있어서 해시를 이용해서 짜는 중 코드가 개판이 되어가고 있었다… 그러면서 C++에 해시 맵이 있다는 것도 알게되었는데, 아무도 이 해시 맵을 사용해서 해결하지 않았다.

검색으로 알게된 방법이 효율성이 좋은 것같아 그냥 이를 이용해서 문제를 해결했다. Java로는 해시를 써서 해결한 분이 있었다. 코드들을 잘 정리해 놓은 포스팅이 도움이 되었다.

participant completion에 있는 내용보다 한 한목이 더 많고 나머지는 동일 하므로 정렬 한 후 일치하지 않을경우 완주하지 못한 사람이다.

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

using namespace std;

string solution(vector<string> participant, vector<string> completion) {
	string answer = "";

	sort(participant.begin(), participant.end());
	sort(completion.begin(), completion.end());

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