Where who wants to meet someone
가운데 글자 가져오기 본문
728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12903
내 답안 / 다른 사람들의 답안
func solution(_ s:String) -> String {
return s.count % 2 == 0 ? s.map { String($0) }[s.count / 2 - 1...s.count / 2].joined() : s.map { String($0) }[s.count / 2]
}
- 짝수라면 문자를 배열로 만들어 가운데 두 인덱스의 항목을 합쳐 반환, 홀수라면 가운데 인덱스(0부터 시작이기에 +1을 하지 않아도 됨)의 글자를 반환했다.
// 풀이 1
func solution(_ s:String) -> String {
return String(s[String.Index(encodedOffset: (s.count-1)/2)...String.Index(encodedOffset: s.count/2)])
}
// 풀이 2
func solution(_ s:String) -> String {
if Array(s).count % 2 == 0 {
return String(Array(s)[(s.count/2)-1...(s.count/2)])
}else{
return String(Array(s)[s.count/2])
}
}
- String.Index를 사용한 풀이와 if문을 사용한 풀이
점수: +1
'프로그래머스 알고리즘 문제 기록 > Lv. 1' 카테고리의 다른 글
내적 (0) | 2024.05.15 |
---|---|
수박수박수박수박수박수? (0) | 2024.05.15 |
제일 작은 수 제거하기 (0) | 2024.05.14 |
핸드폰 번호 가리기 (0) | 2024.05.14 |
콜라츠 추측 (0) | 2024.05.14 |