Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

Ruff! Ruff!

#1427 - 소트인사이드 본문

백준

#1427 - 소트인사이드

maeng-kim 2024. 1. 21. 01:55

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

 

1427번: 소트인사이드

첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.

www.acmicpc.net


문제

배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.

 

입력

첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.

 

출력

첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.


코드

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main()
{
    string n;
    cin >> n;
    const int size = n.size(); //변수로 입력하면 가변길이가 되어서 이상한 문자가 붙어서 출력됨
    int nlist[n.size()];
    
    
    for (int i =0; i< n.size(); i++) {
        nlist[i] = n[i] - '0'; //string to int:스트링 형변환은 명시적 형변환이나 (int) str 같은 형식 사용 불가/ 또는 -'0' (문자에서 정수 변환)
    }
    
    sort(nlist, nlist+size, greater<>()); //greater<>() 사용하면 내림차순 정렬
    
    for(int i =0; i<size; i++) {
        cout << nlist[i];
    }
    cout << "\n";
    return 0;
}

 

☁️sort() 사용법☁️

  • sort(arr, arr+N);
  • sort(v.begin(), v.end());
  • sort(v.begin(), v.end(), compare);                //사용자 정의 함수 사용
  • sort(v.begin(), v.end(), greater<자료형>());    //내림차순
  • sort(v.begin(), v.end(), less<자료형>());        //오름차순 (default 값)(출처: https://cocoon1787.tistory.com/189)

'백준' 카테고리의 다른 글

#[C++]1292- 쉽게 푸는 문제  (1) 2024.01.26
#[C++]2740- 행렬 곱셈  (3) 2024.01.22
#1009 - 분산처리  (0) 2024.01.20
#1157 - 단어공부  (0) 2024.01.20
#1259 - 팰린드롬수  (0) 2024.01.20