Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- class MaxNum {
- public int[] arr;
- public void GetMaxNum() {
- char[][] numArr = new char[arr.length][];
- for (int i = 0; i < arr.length; i++) {
- numArr[i] = ("" + arr[i]).toCharArray();
- }
- QuickSort(arr.length, numArr);
- for (int i = 0; i < arr.length; i++) {
- System.out.print(numArr[i]);
- }
- }
- public void QuickSort(int n, char[][] arr) {
- QuickSortRec(0, n - 1, arr);
- }
- public void QuickSortRec(int low, int high, char[][] arr) {
- if (low < high) {
- int q = Partition(low, high, arr);
- QuickSortRec(low, q - 1, arr);
- QuickSortRec(q + 1, high, arr);
- }
- }
- public int Partition(int low, int high, char[][] arr) {
- int i = low;
- int j = low;
- while (j < high) {
- int k = 0;
- while (arr[j].length > k && arr[high].length > k) {
- if (arr[j][k] > arr[high][k]) {
- char[] t = arr[i];
- arr[i] = new char[arr[j].length];
- arr[i] = arr[j];
- arr[j] = new char[t.length];
- arr[j] = t;
- i++;
- break;
- } else {
- if(arr[j][k] < arr[high][k]) {
- break;
- }
- }
- if ((arr[j].length == k+1 || arr[high].length == k+1) && ((int) arr[j][k] - (int) '0' == (int) arr[high][k] - (int) '0')
- && ((arr[high].length == (k + 1)
- && arr[j].length > arr[high].length && arr[j][k + 1] != '0') || (arr[j].length == (k + 1)
- && arr[high].length > arr[j].length && arr[high][k + 1] == '0')))
- {
- char[] t = arr[i];
- arr[i] = new char[arr[j].length];
- arr[i] = arr[j];
- arr[j] = new char[t.length];
- arr[j] = t;
- i++;
- break;
- }
- k++;
- }
- j++;
- }
- char[] t = arr[i];
- arr[i] = new char[arr[high].length];
- arr[i] = arr[high];
- arr[high] = new char[t.length];
- arr[high] = t;
- return i;
- }
- public static void main(String[] args) {
- MaxNum p = new MaxNum();
- Scanner in = new Scanner(System.in);
- int n = in.nextInt();
- p.arr = new int[n];
- for (int i = 0; i < n; i++) {
- p.arr[i] = in.nextInt();
- }
- p.GetMaxNum();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement