티스토리 뷰
반응형
Using Language : Java
Using Tool : Eclipse
- 프로그래머스 문제 소개
< 정수 내림차순으로 배치하기 >
문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다.
n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요.
예를들어 n이 118372면 873211을 리턴하면 됩니다.
제한 조건
- n은 1이상 8000000000 이하인 자연수입니다.
예시
n return
118372 873211
의사코드
- n의 길이를 구해준다
- n의 길이만큼 String 배열을 만들어서 long형인 n을 한글자씩 넣어준다
- 내림차순하는 함수를 이용해서 String 배열을 내림차순 정렬을한다
- String을 선언해서 내림차순한 배열을 순서대로 String에 넣어준다
- 스트링을 Long형으로 반환해서 return
<Solution17.java>
package level1;
import java.util.Arrays;
import java.util.Collections;
public class Solution17 {
public long solution(long n) {
long answer = 0;
int len = Long.toString(n).split("").length;
String[] array = new String[len];
array= Long.toString(n).split("");
String tmp="";
// 오름차순 정렬이 아닌 내림차순 정렬법
Arrays.sort(array, Collections.reverseOrder());
for(int i=0;i<len;i++) {
tmp+=(long) Integer.parseInt(array[i]);
}
answer=Long.parseLong(tmp);
return answer;
}
}
<Solution17Test.java>
package level1;
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.Test;
public class Solution17Test {
@Test
public void 결과() {
Solution17 solution = new Solution17();
assertEquals(873211, solution.solution(118372));
}
}
반응형
'프로그래머스' 카테고리의 다른 글
24. 프로그래머스_제일 작은 수 제거하기 (0) | 2019.09.18 |
---|---|
23. 프로그래머스_정수 제곱근 판별 (0) | 2019.09.18 |
21. 프로그래머스_자연수 뒤집어 배열로 만들기 (0) | 2019.09.17 |
20. 프로그래머스_자릿수 더하기 (0) | 2019.09.17 |
19. 프로그래머스_x만큼 간격이 있는 n개의 숫자 (0) | 2019.09.17 |
댓글