๐Ÿ€TIL๐Ÿ€[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Coding Test ์Šคํ„ฐ๋””5

PYMยท2023๋…„ 8์›” 21์ผ
0

๐Ÿ€TIL๐Ÿ€Coding Test

๋ชฉ๋ก ๋ณด๊ธฐ
5/16
post-thumbnail

Q1. ๋” ํฌ๊ฒŒ ํ•ฉ์น˜๊ธฐ

์—ฐ์‚ฐ โŠ•๋Š” ๋‘ ์ •์ˆ˜์— ๋Œ€ํ•œ ์—ฐ์‚ฐ์œผ๋กœ ๋‘ ์ •์ˆ˜๋ฅผ ๋ถ™์—ฌ์„œ ์“ด ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

12 โŠ• 3 = 123
3 โŠ• 12 = 312
์–‘์˜ ์ •์ˆ˜ a์™€ b๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, a โŠ• b์™€ b โŠ• a ์ค‘ ๋” ํฐ ๊ฐ’์„ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”.

๋‹จ, a โŠ• b์™€ b โŠ• a๊ฐ€ ๊ฐ™๋‹ค๋ฉด a โŠ• b๋ฅผ return ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿฃ๋‚ด ์ฝ”๋“œ

function solution(a, b) {
    let ab = [];
    let ba = [];
    
    ab.push(a.toString());
    ab.push(b.toString());
    
    ba.push(b.toString());
    ba.push(a.toString());
    
    return +ab.join('') >= +ba.join('') ? +ab.join('') : +ba.join('')
}

๐Ÿ”์ธ์ƒ ๊นŠ์—ˆ๋˜ ์ฝ”๋“œ

function solution(a, b) {
    return Math.max(Number(`${a}${b}`), Number(`${b}${a}`))
}
  • Math.max ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋‘ ๊ฐ’์ค‘ ๋” ํฐ ๊ฐ’์„ ์ฐพ์€ ์ 

  • ๋ฐฑํ‹ฑ ์•ˆ์— ${}์„ ์‚ฌ์šฉํ•ด์„œ ๋งค์šฐ ๊ฐ„๊ฒฐํ•˜๊ฒŒ a-b ์ˆœ, b-a์ˆœ sting์„ ๋งŒ๋“ค์–ด๋ƒˆ๊ณ , ๋˜ ๊ฑฐ๊ธฐ์— Number๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ˆซ์žํ˜•์œผ๋กœ ๋ณ€๊ฒฝ.

  • ์ด๋ ‡๊ฒŒ ํ•˜๋‹ˆ๊นŒ ํ›จ์‹  ๊ฐ€๋…์„ฑ์ด ์ข‹์•„์กŒ๋‹ค!

Q2. ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ด์–ด ๋ถ™์—ฌ ๋ฌธ์ž์—ด ๋งŒ๋“ค๊ธฐ

๊ธธ์ด๊ฐ€ ๊ฐ™์€ ๋ฌธ์ž์—ด ๋ฐฐ์—ด my_strings์™€ ์ด์ฐจ์› ์ •์ˆ˜ ๋ฐฐ์—ด parts๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. parts[i]๋Š” [s, e] ํ˜•ํƒœ๋กœ, my_string[i]์˜ ์ธ๋ฑ์Šค s๋ถ€ํ„ฐ ์ธ๋ฑ์Šค e๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ฐ my_strings์˜ ์›์†Œ์˜ parts์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ˆœ์„œ๋Œ€๋กœ ์ด์–ด ๋ถ™์ธ ๋ฌธ์ž์—ด์„ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”.

๐Ÿฃ๋‚ด ์ฝ”๋“œ

function solution(my_strings, parts) {
    let answer = ""
    
    for(let i = 0; i < my_strings.length; i++){
        let partOfStr = my_strings[i].slice(parts[i][0], parts[i][1]+1);
        answer += partOfStr
    }
    
    return answer
}

๐Ÿ”์ธ์ƒ ๊นŠ์—ˆ๋˜ ์ฝ”๋“œ

function solution(my_strings, parts) {
    return parts.map(([s, e], i) => {
        return my_strings[i].slice(s, e + 1)
    }).join('')
}
  • map ํ•จ์ˆ˜์˜ ๋‘๋ฒˆ์งธ ์ธ์ž๊ฐ€ index ๊ฐ’์ž„์„ ์ž˜ ํ™œ์šฉํ•œ ์ฝ”๋“œ์˜€๋‹ค.
profile
๋ชฉํ‘œ๋Š” "ํ•จ๊ป˜ ์ผํ•˜๊ณ  ์‹ถ์€, ํ•จ๊ป˜ ์ผํ•ด์„œ ์ข‹์€" Front-end ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€