본문 바로가기
Language/알고리즘 문제풀이

프로그래머스 자연수 뒤집어 배열로 만들기 풀이(Java)

by wakestand 2019. 9. 4.
반응형

사이트명 : 프로그래머스(Programmers)

문제명 : 자연수 뒤집어 배열로 만들기

언어 : 자바(Java)

 

자연수를 뒤집은 뒤 배열에 차례대로 넣은 후 반환하라는 문제인데

포인트는 배열에 값을 거꾸로 넣는 것은 쉽지만

문제는 n 값을 어떻게 한글자씩 자르느냐는 것이다

 

내 풀이방법은 아래와 같은데

 

먼저 n값을 String.valueOf를 통해 String 형태로 바꾼 뒤

String의 length를 구해 배열의 크기를 알아내고 

 

이후 for 문을 돌려가면서 String을 한글자씩 자른 후

Integer.parseInt로 int로 변환한 뒤 배열 역순으로 삽입해 준 뒤 반환하면 해결 가능하다

 

프로그래머스에 바로 적용 가능한 답안 코드는 아래와 같다

 

class Solution {
  public int[] solution(long n) {
      String nStr = String.valueOf(n); // long을 String으로 변환
      int nLength = nStr.length(); // long 자리수 확인
      int[] answer = new int[nLength]; 
      int inputValue = 0;

      for(int i  = 0; i<nLength; i++) {
          inputValue = Integer.parseInt(nStr.substring(i, i+1));
          answer[nLength - i - 1] = inputValue; // 4,3,2,1,0 배열 순으로 넣음
      }

      return answer;
  }
}
반응형

댓글