백준 1427: 소트인사이드

Se0ng_1l·2022년 7월 11일
0

백준

목록 보기
24/40

https://www.acmicpc.net/problem/1427

문제 접근

  1. 일반 정수형으로는 표현할 수 있는 수가 제한되어 있으므로 문자열로 수를 입력받는다.
  2. string으로 받은 문자를 c_str()함수를 이용해 char*형의 배열로 바꾼다.
  3. vector을 선언한 후 char*형 배열를 정수로 바꿔 원소 하나하나를 push_back하여 집어넣는다.
  4. sort알고리즘을 사용해 수를 오름차순 정렬한다.
sort(v.begin(), v.end(), greater<int>());
  1. 출력

⚠️ sort함수

sort(v.begin(), v.end()); //오름차순
sort(v.begin(), v.end(), greater<int>()); //내림차순
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);

    vector<int> v;
    string num;
    cin >> num;
    const char *numC = num.c_str();
    for(int i = 0; i < num.length(); i++)
    {
        v.push_back(numC[i] - '0');
    }
    sort(v.begin(), v.end(), greater<int>());
    vector<int>::iterator it;

    for(it = v.begin(); it != v.end(); it++)
    {
        cout << *it;
    }
}
profile
치타가 되고 싶은 취준생

0개의 댓글