https://school.programmers.co.kr/learn/courses/30/lessons/42746
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cmath>
#include <numeric>
using namespace std;
string solution(vector<int> numbers) {
::sort(numbers.begin(), numbers.end(), [](auto a, auto b) {
string strA = to_string(a);
string strB = to_string(b);
return (strA == strB || strA + strB < strB + strA) ? false : true;
});
string zero;
string answer = ::accumulate(numbers.begin(), numbers.end(), string(""), [&](auto str, auto i) {
if (i > 0) return str + to_string(i);
else zero += "0";
return str;
});
return answer.empty() ? "0" : answer + zero;
}
'Coding Test > Programmers' 카테고리의 다른 글
[Programmers] (월간 코드 챌린지 시즌1) Lv 2. 쿼드압축 후 개수 세기 (0) | 2023.07.25 |
---|---|
[Programmers] (완전탐색) Lv 2. 소수 찾기 (0) | 2023.07.24 |
[Programmers] (스택/큐) Lv 2. 다리를 지나는 트럭 (0) | 2023.07.23 |
[Programmers] Lv 2. 롤케이크 자르기 (0) | 2023.07.21 |
[Programmers] (월간 코드 챌린지 시즌2) Lv 2. 2개 이하로 다른 비트 (0) | 2023.07.21 |
댓글