๐Ÿ‘พ[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์™ธ๊ณ„์–ด ์‚ฌ์ „

Chobbyยท2022๋…„ 10์›” 17์ผ
3

Programmers

๋ชฉ๋ก ๋ณด๊ธฐ
120/345

๐Ÿงก๋ฌธ์ œ ์„ค๋ช…

PROGRAMMERS-962 ํ–‰์„ฑ์— ๋ถˆ์‹œ์ฐฉํ•œ ์šฐ์ฃผ๋น„ํ–‰์‚ฌ ๋จธ์“ฑ์ด๋Š” ์™ธ๊ณ„ํ–‰์„ฑ์˜ ์–ธ์–ด๋ฅผ ๊ณต๋ถ€ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์•ŒํŒŒ๋ฒณ์ด ๋‹ด๊ธด ๋ฐฐ์—ด spell๊ณผ ์™ธ๊ณ„์–ด ์‚ฌ์ „ dic์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. spell์— ๋‹ด๊ธด ์•ŒํŒŒ๋ฒณ์„ ํ•œ๋ฒˆ์”ฉ๋งŒ ๋ชจ๋‘ ์‚ฌ์šฉํ•œ ๋‹จ์–ด๊ฐ€ dic์— ์กด์žฌํ•œ๋‹ค๋ฉด 1, ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด 2๋ฅผ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.


๐Ÿ’›์ œํ•œ์‚ฌํ•ญ

  • spell๊ณผ dic์˜ ์›์†Œ๋Š” ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ์žˆ์Šต๋‹ˆ๋‹ค.
  • 2 โ‰ค spell์˜ ํฌ๊ธฐ โ‰ค 10
  • spell์˜ ์›์†Œ์˜ ๊ธธ์ด๋Š” 1์ž…๋‹ˆ๋‹ค.
  • 1 โ‰ค dic์˜ ํฌ๊ธฐ โ‰ค 10
  • 1 โ‰ค dic์˜ ์›์†Œ์˜ ๊ธธ์ด โ‰ค 10
  • spell์˜ ์›์†Œ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•ด ๋‹จ์–ด๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • spell์˜ ์›์†Œ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋‹จ์–ด๋Š” dic์— ๋‘ ๊ฐœ ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • dic๊ณผ spell ๋ชจ๋‘ ์ค‘๋ณต๋œ ์›์†Œ๋ฅผ ๊ฐ–์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๐Ÿ’š์ž…์ถœ๋ ฅ ์˜ˆ

spelldicresult
["p", "o", "s"]["sod", "eocd", "qixm", "adio", "soo"]2
["z", "d", "x"]["def", "dww", "dzx", "loveaw"]1
["s", "o", "m", "d"]["moos", "dzx", "smm", "sunmmo", "som"]2

๐Ÿ’™์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • "p", "o", "s" ๋ฅผ ์กฐํ•ฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋‹จ์–ด๊ฐ€ dic์— ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 2๋ฅผ returnํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • "z", "d", "x" ๋ฅผ ์กฐํ•ฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋‹จ์–ด "dzx"๊ฐ€ dic์— ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 1์„ returnํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #3

  • "s", "o", "m", "d" ๋ฅผ ์กฐํ•ฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋‹จ์–ด๊ฐ€ dic์— ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 2์„ returnํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’œ์œ ์˜์‚ฌํ•ญ

  • ์ž…์ถœ๋ ฅ ์˜ˆ #3 ์—์„œ "moos", "smm", "som"๋„ "s", "o", "m", "d" ๋ฅผ ์กฐํ•ฉํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€๋งŒ spell์˜ ์›์†Œ๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ •๋‹ต์ด ์•„๋‹™๋‹ˆ๋‹ค.

๐ŸคŽ๋‚˜์˜ ํ’€์ด

function solution(spell, dic) {
    // ์ฃผ์–ด์ง„ ๋‹จ์–ด๋ฅผ ์‚ฌ์ „์ˆœ ์ •๋ ฌ
    spell = spell.sort().join("")
    // dic๋ฐฐ์—ด์˜ ์š”์†Œ๋ฅผ ๋ชจ๋‘ ์ •๋ ฌํ•˜๊ณ  ์š”์†Œ๊ฐ€ ์žˆ๋‹ค๋ฉด 1 ์—†๋‹ค๋ฉด 2 ๋ฐ˜ํ™˜
    return dic.map(a => a.split("").sort().join("")).find(a => a===spell) !== undefined ? 1 : 2
}
profile
๋‚ด ์ง€์‹์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๋‹ดํ•จ

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