C++:: 프로그래머스 <가장 큰 수>

jahlee·2023년 4월 11일
0

프로그래머스_Lv.2

목록 보기
28/106
post-thumbnail

compare함수를 어떻게 구현할지에 대해 고민을 좀 했던 문제이다. 결국에는 상당히 간단한 구조로 구현이 가능하다는 것을 알았다.

#include <vector>
#include <string>
#include <algorithm>
using namespace std;

bool compare(string a, string b)
{
    return a+b > b+a;// 두 문자열 합하여 비교
}

string solution(vector<int> numbers)
{
    string answer = "";
    vector<string> v;
    /* 문자열로 바꾸어서 새로 저장 */
    for(auto c : numbers) v.push_back(to_string(c));
    sort(v.begin(), v.end(), compare);
    for(auto c : v) answer.append(c);
    for(int i=0;i<answer.size();i++)// 0만 들어가있는경우 예외처리
        if (answer[i] != '0') return answer;
    return "0";
}

0개의 댓글