문제
입력&출력
문제풀이
import java.util.*;
class Solution {
public String solution(int[] numbers) {
String answer = "";
String[] tmp = new String[numbers.length];
for(int i = 0 ; i < numbers.length;i++){
tmp[i]=Integer.toString(numbers[i]);
}
Arrays.sort(tmp,(s1,s2)->(
(s2+s1).compareTo(s1+s2)
));
if(Integer.parseInt(tmp[0])==0){
return "0";
}
for(int i = 0 ; i < tmp.length;i++){
answer+=tmp[i];
}
return answer;
}
}
※ 내 생각
정렬할 때. 자릿수 마다 비교하는 작업을 진행했는데 자릿수 길이가 각각 달라서 잘 안풀렸어요.
다른 방법으로 문자열 자체를 합쳐 본 결과에 따라서 정렬을 진행한다는 아이디어가 너무 좋네요
예를 들어 6 5 가 있을때 65 , 56 로 합쳐지는데 65가 더 크기 때문에 6이 더 앞으로 갑니다..
'Algorithm > 백준 알고리즘' 카테고리의 다른 글
백준_4358 생태학(자바) / 문자열 (0) | 2021.10.06 |
---|---|
백준_1713 후보 추천하기(자바) / 시뮬레이션 (0) | 2021.10.05 |
백준_2824 최대공약수(자바) / 구현 & 수학 (0) | 2021.10.02 |
백준_9461 파도반 수열(자바) / DP (0) | 2021.09.30 |
백준_5635 생일(자바) / 정렬, 구현 (0) | 2021.09.28 |