[BOJ 알고리즘, C++] #1427 소트 인사이드
BOJ 알고리즘 문제 풀이, 1427번 문제: 소트 인사이드
정렬 알고리즘을 사용하여 입력받은 수의 자릿수들을 내림차순으로 정렬합니다.
문제
std::sort() 활용
풀이 방법
1. "to_string"을 사용하여 입력받은 integer 타입을 string으로 변환합니다.
2. for 문을 사용해서, 각각의 문자를 숫자로 변환( char - '0' )하여 "vector <int>"에 넣어줍니다.
3. sort() 함수를 사용하여, 오름차순으로 정렬 한뒤, 뒤에서 부터 결과를 출력합니다.
4. 정렬 함수를 사용하여, 바로 내림차순으로 정렬 가능하지만, 다른 문제에서 다루겠습니다.
작성 코드
#include<iostream>
#include<string>
#include <vector>
#include <algorithm>
using namespace std;
int main ()
{
string str;
vector<int>count;
int N;
cin >> N;
str = to_string(N);
for(int i =0; i<str.length(); i++)
{
count.push_back(str[i] - '0');
}
sort (count.begin(), count.end());
for(int i=count.size()-1; i >=0; i--)
cout << count[i];
}
'문제 풀이 > BOJ 문제 풀이' 카테고리의 다른 글
[BOJ알고리즘, C++]#15649 N과 M(1), 깊이 정렬, DFS (0) | 2022.02.12 |
---|---|
[BOJ알고리즘, C++]#10814 나이순 정렬 (0) | 2022.02.02 |
[BOJ알고리즘, C++]#1181 단어 정렬 (0) | 2022.02.02 |
[BOJ알고리즘, C++]#11650 좌표 정렬하기 (0) | 2022.02.02 |
[BOJ알고리즘, C++]#2751 수 정렬하기 2 (0) | 2022.02.02 |