알고리즘 공부/프로그래머스
프로그래머스 코딩테스트 연습 - 정렬 - 가장 큰 수
HRuler
2020. 8. 31. 19:10
1. 1번째 풀이
import java.util.Arrays;
class Solution {
public String solution(int[] numbers) {
String answer = "";
String [] strings = new String [numbers.length];
String [] strings2 = new String [numbers.length];
for(int i = 0; i < numbers.length; i = i + 1) {
strings[i] = String.valueOf(numbers[i]);
}
for(int i = 0; i < strings.length; i = i + 1) {
int flag = 0;
for(int j = 0; j < strings.length; j = j + 1) {
int imsi1 = Integer.parseInt(strings[i] + strings[j]);
int imsi2 = Integer.parseInt(strings[j] + strings[i]);
int su1 = Integer.parseInt(strings[i]);
int su2 = Integer.parseInt(strings[j]);
if(imsi1 < imsi2) {
flag = flag + 1;
continue;
}else if(imsi1 == imsi2 && su1 < su2) {
flag = flag + 1;
}
}
strings2[flag] = strings[i];
}
for(String imsi : strings2){
answer = answer + imsi;
}
return answer;
}
}
- 11개 테스트 중 2개 성공
- 각 자리를 앞, 뒤로 합친 후 결과를 비교해 각 배열 원소의 자리를 재배열하는 방법