Baekjoon Online Judge
1427번: 소트인사이드
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
www.acmicpc.net
[문제]
배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자릿수를 내림차순으로 정렬해보자.
[입력]
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
[출력]
첫째 줄에 자릿수를 내림차순으로 정렬한 수를 출력한다.
[풀이]
주어진 수의 각 자릿수를 내림차순으로 정렬해야 하므로
각 자릿수를 비교할 수 있도록 N을 int가 아닌 string으로 입력받는다.
이중 for문을 이용하여 N[i]가 N[j]보다 작을 때
N[i]와 N[j]의 순서를 바꿔주면 N은 내림차순으로 정렬된다.
[코드]
#include <iostream>
using namespace std;
int main()
{
string N;
cin >> N;
for (int i = 0; i < N.length(); i++)
{
for (int j = i + 1; j < N.length(); j++)
{
if (N[i] < N[j])
{
int tmp = N[i];
N[i] = N[j];
N[j] = tmp;
}
}
}
cout << N << '\n';
return 0;
}
+241107 코드 추가
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main()
{
string s;
cin >> s;
sort(s.begin(), s.end(), greater<char>());
cout << s << '\n';
return 0;
}
'Baekjoon > C++' 카테고리의 다른 글
[C++][BOJ/백준] 1316 그룹 단어 체커 (0) | 2024.01.07 |
---|---|
[C++][BOJ/백준] 14730 謎紛芥索紀 (Small) (1) | 2024.01.07 |
[C++][BOJ/백준] 2751 수 정렬하기 2 (0) | 2024.01.05 |
[C++][BOJ/백준] 2869 달팽이는 올라가고 싶다 (0) | 2023.11.08 |
[C++][BOJ/백준] 16435 스네이크버드 (0) | 2023.11.05 |