외계행성의 나이
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges
문제 설명 : 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요.
내가 작성한 코드 :
class Solution {
public String solution(int age) {
//int il = age%10;
//int sib = age/10;
StringBuffer answer = new StringBuffer();
String[] alpha = new String[]{"a","b","c","d","e","f","g","h","i","j"};
while(age > 0){
answer.append(alpha[age%10]);
age /= 10;
}
return answer.reverse().toString();
}
}
참고하고 싶은 코드 :처음에 내가 접근하고자 했던 바로 그 코드! 잘 안풀려서 나는 결국 StringBuffer를 사용해서 성공했는데! 오.. 이렇게 하는 구나!
class Solution {
public String solution(int age) {
String answer = "";
String[] alpha = new String[]{"a","b","c","d","e","f","g","h","i","j"};
while(age>0){
answer = alpha[age % 10] + answer;
age /= 10;
}
return answer;
}
}
StringBuffer 관련 참고한 블로그 :
https://hianna.tistory.com/543
728x90
300x250