언어/c, c++
백준(BAEKJOOB) 1427번 소트인사이드 c++언어
깡 딱
2023. 1. 24. 00:42
728x90
숫자를 문자열로 받아서 내림차순으로 정렬하는 문제이다.
bool compare(int a, int b) {
return a > b;
}
내림 차순 이기 때문에 a>b라는 값을 잡아주고
int n;
string a;
cin >> n;
a = to_string(n);
to_string을 이용한다. int 형을 형 변환 시켜준다.
혹 이문제에서 라이브러리를 이용하지 않는다면
for (int i = 0; i < number.length(); i++)
arr[number[i] - '0']++;
string을 number로 받아서 문자의 길이를 알게 된다음
-'0'을 해준다면 내가 원하는 숫자가 나온다
총 코드
#include<iostream>
#include<string>
#include <vector>
#include <algorithm>
using namespace std;
bool compare(int a, int b) {
return a > b;
}
int main(){
int n;
string a;
cin >> n;
a = to_string(n);
sort(a.begin(), a.end(), compare);
cout << a;
}
728x90