Programers : 정수 내림차순으로 배치하기(stoll / greater, less)

김정욱·2021년 1월 19일
0

Algorithm - 문제

목록 보기
47/249

STL sort 사용시 조건 지정

  • n이 21억이 넘어가기 때문에 int로 불가능 ! --> long long 사용 해야함
  • 문자열로 바꾼 뒤 정렬하면 해결됨
  • stoll()string to long long 이라는 의미를 가지고 있음
  • 조건을 함수로 만들지 않아도 내림차순 / 오름차순은 간단하게 표현 가능
sort(tmp.begin(), tmp.end(), greater<char>); // 내림차순
sort(tmp.begin(), tmp.end(), less<char>); // 오름차순

코드

#include <string>
#include <vector>
#include <algorithm>
>
using namespace std;
>
long long solution(long long n) {
    long long answer = 0;
    string tmp = to_string(n);
    sort(tmp.begin(),tmp.end(),greater<char>());
    answer = stoll(tmp);
    return answer;
}
profile
Developer & PhotoGrapher

0개의 댓글