728x90
반응형
SMALL
크게 어렵지 않은 문제이므로 간단한 문제풀이 절차만 적어보겠다.
1. 수는 1000000000 보다 작거나 같은 자연수라고 했다. 자릿수를 보면 10자리이다.
2. 시간복잡도로 선택정렬을 사용한다면 각 자리 숫자를 완전탐색한다면 O(N^2)의 복잡도를 가지므로 10 * 10 = 100회의 연산을 거친다.
3. 1초당 1억번의 연산을 기준으로 잡는다면 충분히 선택 정렬을 사용해도 무방하다!\
4. BuffredReader와 StringTokenizer로 입력을 받아 연산해준다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
String x = st.nextToken();
int[] arr = new int[x.length()];
for (int i = 0; i < arr.length; i++) {
arr[i] = Integer.parseInt(x.substring(i, i + 1));
}
for (int i = 0; i < arr.length; i++) {
int max =i;
for (int y = i+1; y < arr.length; y++) {
if(arr[y] > arr[max]) {
max=y;
}
}
if (arr[i] < arr[max]) {
swap(i,max,arr);
}
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]);
}
}
private static void swap(int i, int y, int[] arr) {
int tmp =0;
tmp = arr[i];
arr[i] = arr[y];
arr[y] = tmp;
}
}
728x90
반응형
SMALL
'문제 풀이 > 백준 문제풀이' 카테고리의 다른 글
[백준11047 - Java] 동전 0 Greedy 알고리즘으로 풀 (0) | 2024.03.26 |
---|---|
[백준12789-자바/우선순위큐] 도키도키 간식드리미 (0) | 2024.03.20 |
[백준 - 1715/ java] 카드정렬하기 - 우선순위 큐 (0) | 2024.03.18 |
[백준 2164-Java ] 카드2 + Queue에 대한 설명 (0) | 2024.03.17 |
[백준 - 11659/ Java] 구간합 구하기 (4) | 2024.03.12 |