-
Notifications
You must be signed in to change notification settings - Fork 1.5k
/
Solution.java
37 lines (32 loc) · 1.16 KB
/
Solution.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// github.com/RodneyShag
import java.math.BigDecimal;
import java.util.*;
class Solution {
public static void main(String []args) {
//Input
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
String [] s = new String[n+2];
for (int i = 0; i < n; i++) {
s[i] = sc.next();
}
sc.close();
// We want to sort in descending order while preserving the contents
// of each String. A comparator can achieve this for us. We convert
// to BigDecimal inside our comparator so that the change is not
// permanent and our String's form for each number is preserved.
Comparator<String> customComparator = new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
BigDecimal a = new BigDecimal(s1);
BigDecimal b = new BigDecimal(s2);
return b.compareTo(a); // descending order
}
};
Arrays.sort(s, 0, n, customComparator);
//Output
for (int i = 0; i < n; i++) {
System.out.println(s[i]);
}
}
}