반응형
- 문제
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰 것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를 들어 n이 118372면 873211을 리턴하면 됩니다.
제한사항
- n은 1이상 8000000000 이하인 자연수입니다.
입출력 예
- 한 줄 요약
주어진 정수를 역순으로 출력하기!
- 내 코드
1. 실수형 변수 n에 + ""을 해 문자열로 만들어 준 후, split("")을 사용해 문자열 배열 array에 담는다.
2. Arrays.sort() 를 사용해 오름차순으로 정렬한다.
3. Collections.reverse(Arrays.asList())를 사용해 역순으로 정렬한다.
2. String.join("", array)를 사용해 배열을 문자열로 만들어 준 후, Long.parseLong()을 사용해 long으로 형 변환한다.
import java.util.*;
class Solution {
public long solution(long n) {
long answer = 0;
String[] array = ("" + n).split("");
Arrays.sort(array);
Collections.reverse(Arrays.asList(array));
System.out.println(Arrays.toString(array));
answer = Long.parseLong(String.join("", array));
return answer;
}
}
long 자료형을 문자열로 만드는 것과 정렬 함수(Arrays.sort(), Collections.reverse())를 사용하는 것이 핵심!
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 시저 암호 [Java] (0) | 2020.08.07 |
---|---|
프로그래머스 최대공약수와 최소공배수 [Java] (0) | 2020.08.05 |
프로그래머스 (Level 1) 이상한 문자 만들기 [Java] (0) | 2020.08.04 |
프로그래머스 (Level 1) 자연수 뒤집어 배열로 만들기 [Java] (0) | 2020.08.04 |
프로그래머스 (Level 1) 정수 제곱근 판별 [Java] (0) | 2020.08.02 |