정수 내림차순으로 배치하기 : 문제 링크
- n은 1이상 8,000,000,000이하인 자연수이다.
algorithm 헤더의 sort() 함수 사용법
void sort(T start, T end, Compare comp); //comp 인자가 공란이면 오름차순 정렬
- sort(v.begin(), v.end(), compare); // 사용자 정의 함수 사용
- sort(v.begin(), v.end(), greater<자료형>()); // 내림차순
- sort(v.begin(), v.end(), less<자료형>()); // 오름차순
#include <vector>
#include <algorithm>
using namespace std;
long long solution(long long n) {
long long answer = 0;
vector<int> temp;
while(n) {
temp.push_back(n % 10);
n /= 10;
}
sort(temp.begin(), temp.end(), greater<int>());
for(int i = 0; i < temp.size(); ++i) {
answer *= 10;
answer += temp[i];
}
return answer;
}