Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 독서리뷰
- 에러
- study
- 프로그래머스
- 회고
- 자바
- JPA
- 공부
- spring
- 매핑
- 카카오톡1차
- 독서
- Java
- 인프런
- 우아한테크코스
- Eclipse
- 오라클
- Head First Design Pattern
- Oracle
- math
- 후기
- 디자인패턴
- 알고리즘
- Singleton
- 인코딩
- javascript
- 이펙티브자바
- 람다
- 인강리뷰
- Design Pattern
Archives
- Today
- Total
Lee's Grow up
[자바/알고리즘] 프로그래머스 정수 내림차순으로 배치하기 본문
반응형
문제 설명
함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
제한 조건
n
은 1이상 8,000,000,000 이하인 자연수입니다.
입출력 예
n | return |
118372 | 873211 |
나의 풀이
import java.util.Arrays;
import java.util.Comparator;
class Solution {
public long solution(long n) {
String[] sarr = (String.valueOf(n)).split("");
Arrays.sort(sarr,new Comparator<String>() {
@Override
public int compare(String str1, String str2) {
// TODO Auto-generated method stub
return(str2).compareTo(str1);
}
});
return Long.parseLong(String.join("", sarr));
}
}
풀이 설명
넘어온 숫자를 자릿수로 정렬하기 위해 각 자릿수의 숫자를 각각 String[]
배열에 저장하고 싶었다.
그래서 사용한 방법이 넘어온 매개변수 n
을 String.valueOf(long)
메소드를 통해 타입을 String
형으로 바꾸고,String
의 메소드 split()
를 이용해 한글자씩 추출했습니다.
그 후, Arrays.sort()
를 사용해 내림차순 정렬을 한 후, 값을 리턴해줍니다.
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[자바/알고리즘] 프로그래머스 자릿수 더하기 (0) | 2019.11.28 |
---|---|
[자바/알고리즘] 프로그래머스 자연수 뒤집어 배열로 만들기 (0) | 2019.11.28 |
[자바/알고리즘] 프로그래머스 가장 큰 수 (0) | 2019.11.20 |
[자바/알고리즘] 프로그래머스 예상 대진표 (0) | 2019.11.20 |
[자바/알고리즘] 프로그래머스 영어 끝말잇기 (0) | 2019.11.19 |
Comments