Link : https://www.acmicpc.net/problem/1427
소스 결과 : 2048 KB / 0 ms
출처 : BackJoon
설명
시간제한 2초
최대 배열 크기 10
Bubble Sort로 구현해도 금방 푸는 문제
문제 찾던중 눈에 걸려서 풀어본 문제
알고리즘
1. log를 이용하여 자리 수 추출
2. 각 자리 값을 digits 배열에 저장
3. Selection Sort를 이용하여 정렬
4. 출력
소스코드
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n;
cin >> n;
int size = log10(n) + 1;
int digits[10];
for (int i = 0; i < size; i++)
{
digits[size - i - 1] = n % 10;
n /= 10;
}
for (int i = 0; i < size; i++)
{
int max = i;
for (int j = i; j < size; j++)
{
if (digits[j] > digits[max])
max = j;
}
swap(digits[i], digits[max]);
}
for (int i = 0; i < size; i++)
cout << digits[i];
}
'Algorithm > Sorting' 카테고리의 다른 글
Baekjoon 10825 국영수 (0) | 2019.08.23 |
---|---|
Baekjoon 1181 단어 정렬 (0) | 2019.08.22 |
BaekJoon 10989 수 정렬하기 3 (0) | 2019.01.12 |
BaekJoon 1026 보물 (0) | 2019.01.12 |
BaekJoon 1205 등수 구하기 (0) | 2018.12.31 |