[프로그래머스/Kotlin]Level1 - 서울에서 김서방 찾기

2021. 9. 23. 12:58프로그래머스/Kotlin | Level1

728x90
반응형
 

코딩테스트 연습 - 서울에서 김서방 찾기

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

programmers.co.kr

문제 설명
String형 배열 seoul의 element 중 “Kim”의 위치 x를 찾아, “김서방은 x에 있다”는 String 반환
seoul에 “Kim”은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우 없음
제한 조건
  • seoul의 길이 1 이상, 1000 이하 배열
  • seoul의 원소는 길이 1 이상, 20 이하인 문자열
  • “Kim”은 반드시 seoul 안에 포함
​입출력 예
seoul result
[“Jane”, “Kim”] “김서방은 1에 있다”

 

나의 풀이

1. indexOf를 이용하며 요소가 Kim인 위치를 바로 리턴

class Solution {
    fun solution(seoul: Array<String>) = "김서방은 ${seoul.indexOf("Kim")}에 있다"
}

1. 위치를 리턴할 변수 cnt 선언

2. seoul의 요소 s가 "kim"이면 반복문 break 후 cnt 리턴

class Solution {
    fun solution(seoul: Array<String>): String {
        var cnt = 0
        for (s in seoul) {
            if (s == "Kim")
                break
            cnt++
        }
        return "김서방은 ${cnt}에 있다"
    }
}

 

Kotlin 코드 정리

class Solution {
	fun solution(seoul: Array<String>): Stirng {
		for((idx, word) in seoul.withIndex()) {
			if (word == "Kim") {
				return "김서방은 ${idx}에 있다"
			}
		}
	}
}

* (index, value)로 for문을 돌려 바로 index를 찾을 수 있음

728x90
반응형