코딩테스트/백준

[플5] 16496 - 큰 수 만들기

ShovelingLife 2022. 7. 1. 10:36

정렬 함수 3번째 인자 _Pred 람다 함수로 깔끔하게 해결 

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

using namespace std;

#define SIZE 1000

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL); cout.tie(NULL);
    string arr[SIZE];
    int n; cin >> n;
    cin.ignore();
    
    int flag = 0;
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
        if (arr[i] != "0")
            flag = true;
    }
    if (!flag)
        cout << 0;

    else
    {
        for (int i = 0; i < n; i++)
        {
            sort(arr, arr + n, [](string str1, string str2)
                {
                    if (str1 == str2)
                        return false;

                    return str1 + str2 > str2 + str1;
                });
            cout << arr[i];
        }
    }
    return 0;
}