๐Ÿค ์€์ง€log ๐Ÿค

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค:Javascript] ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ด์–ด ๋ถ™์—ฌ ๋ฌธ์ž์—ด ๋งŒ๋“ค๊ธฐ ๋ณธ๋ฌธ

๐ŸŒˆ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค:Javascript] ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ด์–ด ๋ถ™์—ฌ ๋ฌธ์ž์—ด ๋งŒ๋“ค๊ธฐ

Eun_zii 2024. 3. 22. 15:22

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

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

 

๐Ÿ’š ๋ฌธ์ œ์„ค๋ช…

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

 

๐Ÿ’š ์ œํ•œ์กฐ๊ฑด

  • 1 ≤ my_strings์˜ ๊ธธ์ด = parts์˜ ๊ธธ์ด ≤ 100
  • 1 ≤ my_strings์˜ ์›์†Œ์˜ ๊ธธ์ด ≤ 100
  • parts[i]๋ฅผ [s, e]๋ผ ํ•  ๋•Œ, ๋‹ค์Œ์„ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค.
    • 0 ≤ s ≤ e < my_strings[i]์˜ ๊ธธ์ด

๐Ÿ’š ํ’€์ด

function solution(my_strings, parts) {
    let answer = '';
    for ( let i = 0; i < my_strings.length; i++ ) {
       const [ s,e ] = parts[i]
       const substr = my_strings[i].substring(s, e +1)
       answer += substr
    }
    return answer
}

 

โœ… 

๋ฌธ์ œ๋ฅผ ์ฒ˜์Œ ๋ดค์„๋•Œ ์ข€ ์ดํ•ด๊ฐ€ ์•ˆ๋˜์–ด์„œ ๊ฒ€์ƒ‰ํ•ด๋ณด์•˜๋‹ค ใ… ,,

my_strings์™€ parts๋ฅผ ๋™์‹œ์— ๋ฐ˜๋ณตํ•ด์•ผ ํ•˜๊ณ , ๊ฐ my_strings[i]์— ๋Œ€ํ•ด parts[i]๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ณ ,

์ถ”์ถœํ•œ ๋ฌธ์ž์—ด์„ ํ•จ๊ป˜ ์—ฐ๊ฒฐํ•ด์ฃผ์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์˜€๋‹ค.

 

์ถ”์ถœํ•œ ๋ฌธ์ž์—ด์„ ์ €์žฅํ•  answer ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•˜๊ณ , for๋ฌธ ์œผ๋กœ my_strings ๋ฅผ ๋ฐ˜๋ณตํ•ด์ค€๋‹ค. 

๊ฐ ๋ฐ˜๋ณต์—์„œ, ํ˜„์žฌ ๋ฌธ์ž์—ด์—์„œ ์ถ”์ถœํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์˜ ์‹œ์ž‘๊ณผ ๋ ์ธ๋ฑ์Šค๋ฅผ parts[i]์—์„œ ๊ตฌ์กฐ ๋ถ„ํ•ด๋ฅผ ํ†ตํ•ด ์ถ”์ถœํ•˜์—ฌ [s, e]๋กœ ์„ ์–ธํ•ด์ค€๋‹ค.

substring( ) ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ˜„์žฌ ๋ฌธ์ž์—ด์—์„œ ์ถ”์ถœํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๊ฐ€์ ธ์˜จ๋‹ค.

( ๐Ÿ’ก substring( ) ๋ฉ”์„œ๋“œ์˜ ์ฒซ ๋ฒˆ์งธ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ์‹œ์ž‘ ์ธ๋ฑ์Šค์ด๊ณ  ๋‘ ๋ฒˆ์งธ ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋ ์ธ๋ฑ์Šค์ด๋ฉฐ, ๋ ์ธ๋ฑ์Šค๋Š” ํฌํ•จ๋˜์ง€ ์•Š๋Š”๋‹ค. )

๊ทธ๋ž˜์„œ e + 1์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ ์ธ๋ฑ์Šค๋ฅผ ์กฐ์ •ํ•˜์—ฌ ํ•ด๋‹น ๋ฌธ์ž๋„ ํฌํ•จํ•˜๋„๋ก ํ•ด์ค€๋‹ค. 

์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ answer์— ์ถ”๊ฐ€ํ•ด์ค€ํ›„, ๋ชจ๋“  ๋ฐ˜๋ณต์ด ์™„๋ฃŒ๋˜๋ฉด answer๋ฅผ return ํ•œ๋‹ค.

 

๐Ÿ’ก ๋‹ค๋ฅธ์‚ฌ๋žŒ ํ’€์ด

function solution(my_strings, parts) {
    return parts.map(([s, e], i) => {
        return my_strings[i].slice(s, e + 1)
    }).join('')
}
728x90