알고리즘

[프로그래머스] level 1 - 완주하지 못한 선수

u0jin 2020. 5. 3. 19:19
#include <string>

#include <vector>

#include <algorithm>

using namespace std;



string solution(vector<string> participant, vector<string> completion) {

    string answer = "";

    int a=0;



    sort(participant.begin(),participant.end(),less<string>());

    sort(completion.begin(),completion.end(),less<string>());



      for(int i=0;i<participant.size();i++ ){

        if(participant[i] != completion[a] ){

            answer += participant[i];

        }else{

            a++;

        }

    }



    return answer;

 

 

알고리즘 )

1. participant 정렬함 

2. completion 정렬함 

=> 순서는 문제푸는데 상관없어보이기 때문에 정렬함

3. 같지않으면 participant를 답에 넣음 

=> 같지않으면 completion만 변하도록 함 , 같은 이름일 경우가 존재하므로 completion 만 변하도록 하는것이 깔끔함