[프로그래머스] Lv.0 - 숫자 찾기

·2023년 4월 5일
0

Programmers

목록 보기
15/30
post-thumbnail

✨ 문제설명

정수 num과 k가 매개변수로 주어질 때, num을 이루는 숫자 중에 k가 있으면 num의 그 숫자가 있는 자리 수를 return하고 없으면 -1을 return 하도록 solution 함수를 완성해보세요.

🔥 제한사항

  • 0 < num < 1,000,000
  • 0 ≤ k < 10
  • num에 k가 여러 개 있으면 가장 처음 나타나는 자리를 return 합니다.

입출력 예


🌟 풀이

✅ 내 풀이

1. 삼항 연산자 사용

function solution(num, k) {
  return String(num).includes(k) === true ? String(num).indexOf(k) + 1 : -1;
}

num을 문자열로 바꾼 뒤, 삼항연산자를 사용해 k가 포함되어 있다면 index를 찾아 index+1 해주도록 하였다.

2. OR 연산자 사용

function solution(num, k) {
  return num.toString().indexOf(k) + 1 || -1;
}

문제 제출 이후 다른 사람의 풀이를 토대로 코드를 좀 더 간결하게 수정해 보았다. 삼항연산자 대신 OR 연산자를 사용했다.


✅ 다른 사람 풀이

function solution(num, k) {
  return (
    num
      .toString()
      .split('')
      .map((el) => Number(el))
      .indexOf(k) + 1 || -1
  );
}

두번째 풀이 시에 참고한 풀이이다.

profile
🎨

0개의 댓글