diff --git a/programmers/가장 큰 수/solution.java b/programmers/가장 큰 수/solution.java index 7b2f691..eec21f2 100644 --- a/programmers/가장 큰 수/solution.java +++ b/programmers/가장 큰 수/solution.java @@ -4,25 +4,11 @@ import java.util.*; import java.lang.StringBuilder; class Solution { public String solution(int[] numbers) { - String answer = ""; - Comp comp = new Comp(); StringBuilder sb = new StringBuilder(); String[] nb = new String[numbers.length]; - for(int a = 0; a < numbers.length; a++){ - nb[a] = String.valueOf(numbers[a]); - } - Arrays.sort(nb,comp); + for(int a = 0; a < numbers.length; a++) nb[a] = String.valueOf(numbers[a]); + Arrays.sort(nb,((a,b)-> ((a.equals("0")&&b.equals("0"))?0:((Integer.valueOf((a.charAt(0)=='0')?b:a+b) >Integer.valueOf((b.charAt(0)=='0')?a:b+a))?-1:1)))); for(String s : nb) sb.append(s); return (sb.charAt(0)=='0')?"0":sb.toString(); } - public class Comp implements Comparator { - public int compare(String a, String b) { - // int l, r; - if(a.equals("0")&&b.equals("0")) return 0; - - int l = Integer.valueOf((a.charAt(0)=='0')?b:a+b), r = Integer.valueOf((b.charAt(0)=='0')?a:b+a); - if(l>r) return -1; - else return 1; - } - } } \ No newline at end of file