728x90
코드 힌트
- 배열 순회:
- seoul 배열의 모든 요소를 하나씩 확인합니다.
- for (i in seoul.indices)를 사용하면 배열의 인덱스를 쉽게 가져올 수 있습니다.
- 조건문 사용:
- 각 요소가 "Kim"인지 확인하기 위해 if (seoul[i] == "Kim") 조건문을 사용합니다.
- 만약 조건이 참이라면, 해당 인덱스를 포함한 문자열을 반환합니다.
- 여러가지 방식으로 풀기:
- 정답에 같이 적겠습니다.
정답은 더보기 클릭
더보기
class Solution {
fun solution(seoul: Array<String>): String {
// "Kim"의 인덱스를 찾아서 결과 문자열을 생성하여 반환합니다.
// seoul 배열의 각 요소를 순회하면서 "Kim"을 찾습니다.
for (i in seoul.indices) {
// 현재 요소가 "Kim"이면 결과를 반환합니다.
if (seoul[i] == "Kim") {
return "김서방은 ${i}에 있다" // 인덱스 i를 사용하여 위치를 알려줍니다.
}
}
// "Kim"을 찾지 못한 경우 사용자에게 알리는 메시지를 반환합니다.
return "Kim을 찾을 수 없습니다!"
}
}
여러가지 메소드로 풀기
class Solution {
fun solution(seoul: Array<String>): String {
// Case 1: String 템플릿을 활용한 간단한 반환
김씨를 찾고, indexOf로 위치를 찾아서 바로 반환합니다.
return "김서방은 ${seoul.indexOf("Kim")}에 있다"
// Case 2: forEachIndexed를 사용한 반복문 방식
forEachIndexed는 첫 번째 매개변수로 인덱스를, 두 번째로 배열의 요소를 전달받아 탐색합니다.
seoul.forEachIndexed { idx, s ->
if (s == "Kim") {
return "김서방은 ${seoul.indexOf("Kim")}에 있다"
}
}
return "ElementNotFoundException"
// Case 3: withIndex를 사용한 반복문 방식
// withIndex는 (인덱스, 요소) 쌍을 제공하므로 이 방식으로도 탐색이 가능합니다.
for ((idx, s) in seoul.withIndex()) {
if (s == "Kim") {
return "김서방은 ${seoul.indexOf("Kim")}에 있다"
}
}
return "ElementNotFoundException"
}
}
728x90
'프로그래머스(Kotlin) > Level 1' 카테고리의 다른 글
[프로그래머스 (Kotlin)] 음양 더하기 (1) | 2024.10.03 |
---|---|
[프로그래머스 (Kotlin)] 콜라츠 추측 (0) | 2024.10.02 |
[프로그래머스 (Kotlin)] 자릿수 더하기 (0) | 2024.10.02 |
[프로그래머스 (Kotlin)] 하샤드 수 (0) | 2024.09.30 |
[프로그래머스 (Kotlin)] 자연수 뒤집어 배열로 만들기 (4) | 2024.09.29 |