ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 코딩테스트 연습 / 연습문제 / 자연수 뒤집어 배열로 만들기 / JAVA
    카테고리 없음 2020. 4. 13. 17:29

    문제 설명

     

    자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.

     

    제한 조건

    • n은 10,000,000,000이하인 자연수입니다.

     

    입출력 예

    n return
    12345 [5,4,3,2,1]

     


    나의 풀이

     

    class Solution {
      public int[] solution(long n) {
          int[] answer = {};
    		int len = (int) Math.ceil(Math.log10(n));
    		
    		answer = new int[len];
    		for(int i=0; i<len; i++) {
    			answer[i] = (int) (n % 10);
    			n /= 10;
    		}
    		
    		return answer;
      }
    }

     


    풀이 분석

     

    이전에 비슷한 문제를 Math.log10() 메서드를 이용해서 문제를 푼 사람을 보고 인상깊어서 한번 따라해보았다.

    다른 사람들은 대부분 String으로 변환해서 해당 문자의 길이를 구하는 방식으로 접근하던가 StringBuilder의 reverse()메서드를 이용해서 많이 풀었다.

    나는 Math 클래스의 메서드들을 이용해서 풀었지만 변환해서 푸는게 더 빠른지는 아직 잘 모르겠다.

    나중에 시간이 나면 비교해보고 공부해 봐야할 것 같다.

     


    히스토리 보기

     

    chucoding/algorithm

    알고리즘 문제풀이 사이트 도전~!! . Contribute to chucoding/algorithm development by creating an account on GitHub.

    github.com

     

    댓글

Designed by Tistory.