Problem Solution/Programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/JS] ์ˆซ์ž ์ฐพ๊ธฐ

yuri lee 2023. 10. 21. 14:38
๋ฐ˜์‘ํ˜•

Problem Description

์ •์ˆ˜ num๊ณผ k๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, num์„ ์ด๋ฃจ๋Š” ์ˆซ์ž ์ค‘์— k๊ฐ€ ์žˆ์œผ๋ฉด num์˜ ๊ทธ ์ˆซ์ž๊ฐ€ ์žˆ๋Š” ์ž๋ฆฌ ์ˆ˜๋ฅผ returnํ•˜๊ณ  ์—†์œผ๋ฉด -1์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”.

 

Restrictions.

  • 0 < num < 1,000,000
  • 0 ≤ k < 10

 

Input/Output Example

  • ์ž…์ถœ๋ ฅ ์˜ˆ #1 29183์—์„œ 1์€ 3๋ฒˆ์งธ์— ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ž…์ถœ๋ ฅ ์˜ˆ #2  232443์—์„œ 4๋Š” 4๋ฒˆ์งธ์— ์ฒ˜์Œ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค.

My solution

function solution(num, k) {
    const result = num.toString().indexOf(k)
    return result !== -1 ? result + 1 : result
}

 

Another solutions

function solution(num, k) {
    return num.toString().split("").map((el) => Number(el)).indexOf(k) + 1 || -1
}
  • Array ์ธ์Šคํ„ด์Šค์˜ indexOf() ๋ฉ”์„œ๋“œ๋Š” ๋ฐฐ์—ด์—์„œ ์ฃผ์–ด์ง„ ์š”์†Œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์ฐพ์„ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ -1์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

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

 

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

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

programmers.co.kr

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf

 

Array.prototype.indexOf() - JavaScript | MDN

Array ์ธ์Šคํ„ด์Šค์˜ indexOf() ๋ฉ”์„œ๋“œ๋Š” ๋ฐฐ์—ด์—์„œ ์ฃผ์–ด์ง„ ์š”์†Œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์ฐพ์„ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ -1์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

developer.mozilla.org

 

๋ฐ˜์‘ํ˜•