럿고의 개발 노트
[프로그래머스] 자연수 뒤집어 배열로 만들기 본문
[프로그래머스] 코딩테스트 연습
자연수 뒤집어 배열로 만들기
간략한 문제 풀이
StringBuffer를 사용하여, reverse메소드를 이용하여 뒤집었다.
처음에는 연산으로 풀려고 하는데, 아직 수학적인 알고리즘 생각은 부족한듯 하다..ㅠㅠㅠ(엄청나게 간단한 것 같은데...)
Collection.reverse()는 문자열 내림차순으로 배치하기 에서 사용했었으나, 이번에는 StringBuffer의 reverse도 사용하니, reverse 메소드를 외우게 된 것 같다.
문제 및 풀이
문제 설명
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
제한 조건
n은 10,000,000,000이하인 자연수입니다.
입출력 예
n | return |
---|---|
12345 | [5,4,3,2,1] |
import java.util.Arrays;
/**
* @ClassName : ReverseIntegerArray
* @ProblemName : 자연수 뒤집어 배열로 만들기
* @URL : https://programmers.co.kr/learn/courses/30/lessons/12932
*/
public class ReverseIntegerArray {
public int[] solution(long n) {
StringBuffer nString = new StringBuffer(Long.toString(n));
int[] answer = new int[nString.length()];
nString.reverse();
for (int i = 0; i < nString.length(); i++) {
answer[i] = Integer.parseInt(nString.substring(i, i + 1));
}
return answer;
}
// Test Case
public static void main(String[] args) {
ReverseIntegerArray reverseIntegerArray = new ReverseIntegerArray();
long n = 12345;
System.out.println(Arrays.toString(reverseIntegerArray.solution(n)));
}
}
'Java Note > Algorithmus' 카테고리의 다른 글
[프로그래머스] 정수 제곱근 판별 (0) | 2020.01.26 |
---|---|
[프로그래머스] 정수 내림차순으로 배치하기 (0) | 2020.01.25 |
[프로그래머스] 자리수 더하기 (0) | 2020.01.23 |
[프로그래머스] 이상한 문자 만들기 (0) | 2020.01.22 |
[프로그래머스] 약수의 합 (0) | 2020.01.20 |
Comments