티스토리 뷰
문제 설명
String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.
제한 조건
- seoul은 길이 1 이상, 1000 이하인 배열입니다.
- seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.
- "Kim"은 반드시 seoul 안에 포함되어 있습니다.
내 답안
func solution(_ seoul:[String]) -> String {
var result = 0
for (index, i) in seoul.enumerated() {
// if i == "Kim" {
// result = String(index)
// }
guard i == "Kim" else { continue }
result = index
}
return "김서방은 \(result)에 있다"
}
접근 방법
배열에서 index를 알 수 있는 함수 enumerated() 를 쓴다
다른 풀이
func solution(_ seoul:[String]) -> String {
return "김서방은 \(seoul.firstIndex(of: "Kim")!)에 있다"
}
알게 된 것
- firstIndex(of:) 특정 요소의 첫 번째 발생 위치를 찾는 메서드
- enumerated()
- array.enumerated() 가능
- string.enumerated() 가능
- 처음에는 s를 배열로 변경한 후 진행했으나, 문자열에도 사용할 수 있다는 것을 알게 됨!
'코딩테스트' 카테고리의 다른 글
10월 20일 - 음양 더하기 swift (0) | 2023.10.20 |
---|---|
10월 19일 - 가장 가까운 같은 글자 swift (0) | 2023.10.19 |
10월 18일 - 행렬의 덧셈 swift (0) | 2023.10.19 |
10월 18일 - 콜라츠 추측 swift (0) | 2023.10.19 |
swift Lv.1 문자열 내 마음대로 정렬하기 (0) | 2023.10.19 |
최근에 올라온 글