Eggs Sunny Side Up
본문 바로가기
Algorithm/Programmers_Java

[Java] 외계행성의 나이

by guswn100059 2023. 4. 21.

문제 설명

우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요.


제한사항
  • age는 자연수입니다.
  • age ≤ 1,000
  • PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다.

입출력 예ageresult
23 "cd"
51 "fb"
100 "baa"

입출력 예 설명

입출력 예 #1

  • age가 23이므로 "cd"를 return합니다.

입출력 예 #2

  • age가 51이므로 "fb"를 return합니다.

입출력 예 #3

  • age가 100이므로 "baa"를 return합니다.

 

class Solution {
    public String solution(int age) {
        char c = 'a';
		char a1 = c;
		char a2 = c;
		char a3 = c;
		char a4 = c;
		String result = "";
		
		
		for(int i = 0; i < 10; i++) {
			if(age>=1000) {
				if(age/1000 == i)  a1 = (char)(c+i);
				if(age%1000/100 == i)  a2 = (char)(c+i);	
				if(age%1000%100/10 == i)  a3 = (char)(c+i);
				if(age%10 == i)  a4 = (char)(c+i);
				
				result = String.valueOf(a1)+String.valueOf(a2)+String.valueOf(a3)+String.valueOf(a4);
				
			}else if(age>=100) {
				if(age%1000/100 == i)  a2 = (char)(c+i);	
				if(age%1000%100/10 == i)  a3 = (char)(c+i);
				if(age%10 == i)  a4 = (char)(c+i);
				
				result = String.valueOf(a2)+String.valueOf(a3)+String.valueOf(a4);
			
			}else if(age>=10) {
				if(age%1000%100/10 == i)  a3 = (char)(c+i);
				if(age%10 == i)  a4 = (char)(c+i);
				
				result = String.valueOf(a3)+String.valueOf(a4);
			
			}else {
				if(age%10 == i)  a4 = (char)(c+i);
				
				result = String.valueOf(a4);
			}
			
		}
        return result;
    }
}

'Algorithm > Programmers_Java' 카테고리의 다른 글

[Java] 가장 큰 수 찾기  (0) 2023.04.24
[Java] 배열 회전시키기  (0) 2023.04.20
[Java] 인덱스 바꾸기  (0) 2023.04.18
[Java] n의 배수 고르기  (0) 2023.04.16
[Java] 최댓값 만들기 (2)  (0) 2023.04.14

댓글