Algorithm & SQL/Programmers
[Programmers Lv.2 / Java] 가장 큰 수
김룹
2024. 3. 28. 11:52
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
👇 내가 작성한 코드
import java.util.*;
class Solution {
public String solution(int[] numbers) {
String[] arr = new String[numbers.length];
for(int i = 0; i < numbers.length; i++) {
arr[i] = String.valueOf(numbers[i]);
}
// 두 수를 합친 값을 기준으로 내림차순
// o1 : 30, o2 : 5 일 경우, 305와 530 중 더 큰 값 비교
Arrays.sort(arr, (o1, o2) -> (o2 + o1).compareTo(o1 + o2));
// 정렬된 배열의 맨 처음이 0이라면 0으로만 되어있음. 0 반환
return arr[0].equals("0") ? "0" : String.join("", arr);
}
}