본문 바로가기
Algorithm/Programmers

[프로그래머스(programmers)] (Lv2) 124 나라의 숫자

by 광진구뚝배기 2021. 5. 26.

알고리즘 문제 풀이 / 프로그래머스 (programmers)  -  124 나라의 숫자

 

1,2,4 로만 구성된 숫자 표현법을 만드는 문제

문제 링크

https://programmers.co.kr/learn/courses/30/lessons/12899

 

코딩테스트 연습 - 124 나라의 숫자

 

programmers.co.kr

 

 

문제 풀이

 

첫번째 시도

첫 시도에서는 문자열 str 에 숫자를 받아와 뒤집어 주게 풀었었다.

이렇게 하니 효율성에서 시간 초과가 나서 애초에 문자를 추가 할 때, 앞에 추가해주면 되는거였다.

public static String solution(int n) {
	String answer = "";
	String str = "";

	while (n > 0) {
		int num = n % 3;
		n = n / 3;
		if(num == 0) {
			num = 4;
			n--;
		}
		str += num;

	}

	for(int i = str.length() -1 ; i >= 0; i--) {
		answer += str.charAt(i);
	}

	return answer;
}

 

두번째 시도

 public static String solution(int n) {
    String answer = "";
        
    while (n > 0) {
       	int num = n % 3;
       	n = n / 3;
       	if(num == 0) {
       		num = 4;
       		n--;
       	}
      	answer = Integer.toString(num).concat(answer);
    }  
	return answer;
}
반응형

댓글