본문 바로가기
Developer/Algorithm

Programmers 프로그래머스 코딩테스트 연습 - 서울에서 김서방 찾기 (JavaScript)

by roqkfrlfhr 2020. 8. 19.

Programmers 프로그래머스 코딩테스트 연습 - 서울에서 김서방 찾기 (JavaScript)

 

Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중,

서울에서 김서방 찾기 문제를 JavaScript로 해결해 보도록 하겠습니다.

 

 

문제 설명

String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

 

제한 사항

  • seoul은 길이 1 이상, 1000 이하인 배열입니다.
  • seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.
  • "Kim"은 반드시 seoul 안에 포함되어 있습니다.

 

입출력 예

seoul return
["Jane", "Kim"] "김서방은 1에 있다"

 

 

작성한 답

solution.js

function solution(seoul) {
    return "김서방은 " + seoul.indexOf("Kim") + "에 있다";
}

 

설명

String형 배열 seoul의 요소 중 "Kim"의 위치(index)를 찾아, "김서방은 index에 있다"는 String을 반환하는 함수, solution을 완성하는 문제입니다. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

사실 이 문제는 위 코드만 보셔도 바로 이해가 되실 정도로 정말 아주 간단하고 쉬운 문제입니다.

딱 원하는 string을 정적으로 입력하고, 배열 seoul에 무조건 하나만 존재하는 "Kim"이라는 string 요소의 index 값만 구해 붙여주기만 하면 되는 것이죠.

그래도 풀어서 설명을 드리자면,

먼저 "Kim"이라는 string값을 오직 한개의 요소로 무조건 가지고 있는 seoul이라는 배열에서 "Kim" 요소가 몇번째 index에 있는지 알아내야 합니다.

그러기 위해 배열 seoul에,

배열에서 찾기를 원하는 요소에 해당하는 요소 중 첫 번째 index를 반환하고 원하는 요소가 존재하지 않을 시 -1을 반환해주는 indexOf()함수seoul.indexOf("Kim")와 같이 사용하여 string 값 "Kim"이 몇번째 index에 있는지 알아냅니다.

그리고 index가 만약 1 이라면 "김서방은 1에 있다" 와 같은 string을 반환해야하기 때문에,

"김서방은(공백)" + seoul.indexOf("Kim") + "에(공백)있다" 를 반환 해줍니다.

여기서 딱 해당 string 값을 반환해야하기 때문에 정적으로 들어가는 string만 잘 입력 해주시고, 공백을 넣어야 하는 부분에 공백만 잘 넣어 주시면 되겠습니다.

(설명이 조금 이상해도 문제가 워낙 쉬워서 아마 이해가 되시리라 믿습니다...)

 

 

 

도움이 되셨다면 공감, 댓글 부탁드립니다!

궁금하신 점이나 요청 사항은 언제든지 말씀 해주세요!

 

감사합니다.


댓글