Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 변수
- sorting
- 알고리즘
- leetcode
- 파이썬
- Algorithm
- dynamic programming
- array
- HTML
- JavaScript
- Python
- computed
- github
- string
- greedy
- java
- 자료구조
- 백준
- 코딩테스트
- 프로그래머스
- 자료형
- 컴포넌트
- JS
- SasS
- scss
- JavaSceipt
- vue.js
- CSS
- math
- hash table
Archives
- Today
- Total
Posis
[프로그래머스] 외계행성의 나이 본문
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/120834
문제 설명
우주여행을 하던 머쓱이는 엔진 고장으로 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 행성은 알파벳 소문자만 사용합니다.
입출력 예
age | result |
23 | "cd" |
51 | "fb" |
100 | "baa" |
입출력 예 설명
입출력 예 #1
- age가 23이므로 "cd"를 return합니다.
입출력 예 #2
- age가 51이므로 "fb"를 return합니다.
입출력 예 #3
- age가 100이므로 "baa"를 return합니다.
나의 풀이
Java
class Solution {
public String solution(int age) {
String[] strArr = ("" + age).split("");
String answer = "";
for(int i = 0; i < strArr.length; i++) {
switch(strArr[i]) {
case "0":
answer += "a";
break;
case "1":
answer += "b";
break;
case "2":
answer += "c";
break;
case "3":
answer += "d";
break;
case "4":
answer += "e";
break;
case "5":
answer += "f";
break;
case "6":
answer += "g";
break;
case "7":
answer += "h";
break;
case "8":
answer += "i";
break;
case "9":
answer += "j";
break;
}
}
return answer;
}
}
JavaScript
function solution(age) {
let answer = '';
const ageObject = {
'0': 'a',
'1': 'b',
'2': 'c',
'3': 'd',
'4': 'e',
'5': 'f',
'6': 'g',
'7': 'h',
'8': 'i',
'9': 'j',
};
let ageArr = (age + '').split('');
answer = ageArr.map((value) => ageObject[value]).join("");
return answer;
}
// 방법2
function solution(age) {
return age.toString().split('').map((v) => 'abcdefghij'[v]).join('');
}
JavaScript는 문자열에도 index가 존재하므로 2번째와 같은 방법으로도 해결할 수 있습니다.
728x90
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 최댓값 만들기 (2) (0) | 2022.12.05 |
---|---|
[프로그래머스] 인덱스 바꾸기 (0) | 2022.12.05 |
[프로그래머스] 피자 나눠 먹기 (2) (0) | 2022.12.05 |
[프로그래머스] 주사위의 개수 (0) | 2022.12.05 |
[프로그래머스] 약수 구하기 (0) | 2022.12.05 |