Problem Solution/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JS] ๊ฐ€์œ„ ๋ฐ”์œ„ ๋ณด

yuri lee 2023. 9. 13. 23:22
๋ฐ˜์‘ํ˜•

Problem Description

๊ฐ€์œ„๋Š” 2 ๋ฐ”์œ„๋Š” 0 ๋ณด๋Š” 5๋กœ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์œ„ ๋ฐ”์œ„ ๋ณด๋ฅผ ๋‚ด๋Š” ์ˆœ์„œ๋Œ€๋กœ ๋‚˜ํƒ€๋‚ธ ๋ฌธ์ž์—ด rsp๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, rsp์— ์ €์žฅ๋œ ๊ฐ€์œ„ ๋ฐ”์œ„ ๋ณด๋ฅผ ๋ชจ๋‘ ์ด๊ธฐ๋Š” ๊ฒฝ์šฐ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๋‚˜ํƒ€๋‚ธ ๋ฌธ์ž์—ด์„ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”.

 

Restrictions.

  • 0 < rsp์˜ ๊ธธ์ด ≤ 100
  • rsp์™€ ๊ธธ์ด๊ฐ€ ๊ฐ™์€ ๋ฌธ์ž์—ด์„ return ํ•ฉ๋‹ˆ๋‹ค.
  • rsp๋Š” ์ˆซ์ž 0, 2, 5๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

 

Input/Output Example

  • ์ž…์ถœ๋ ฅ ์˜ˆ #1 "2"๋Š” ๊ฐ€์œ„์ด๋ฏ€๋กœ ๋ฐ”์œ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” "0"์„ return ํ•ฉ๋‹ˆ๋‹ค.
  • ์ž…์ถœ๋ ฅ ์˜ˆ #2 "205"๋Š” ์ˆœ์„œ๋Œ€๋กœ ๊ฐ€์œ„, ๋ฐ”์œ„, ๋ณด์ด๊ณ  ์ด๋ฅผ ๋ชจ๋‘ ์ด๊ธฐ๋ ค๋ฉด ๋ฐ”์œ„, ๋ณด, ๊ฐ€์œ„๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๋‚ด์•ผํ•˜๋ฏ€๋กœ “052”๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค.

 

My solution

function solution(rsp) {
    return rsp.split("").map((x) => condition(x)).join("")
}

function condition(x) {
    if (x == '2') {
        return '0'
    } else if (x == '0') {
        return '5'
    } else {
        return '2'
    }
}

 

Another solutions

/*
 ๊ฐ€์œ„๋Š” 2 ๋ฐ”์œ„๋Š” 0 ๋ณด๋Š” 5
*/
function solution(rsp) {
    let arr = {
        2: 0,
        0: 5,
        5: 2
    };
    var answer = [...rsp].map(v => arr[v]).join("");
    return answer;
}

๊ฐ์ฒด ์‚ฌ์šฉ๋ฒ• ์ฒดํฌ 

 

function solution(rsp) {
    return rsp.split("").map((v) => v==="2" ? 0 : (v==="0" ? 5 : 2)).join("")
}

์‚ผํ•ญ์—ฐ์‚ฐ์ž ์ฒดํฌ


https://school.programmers.co.kr/learn/courses/30/lessons/120839

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

๋ฐ˜์‘ํ˜•