Where who wants to meet someone

접미사인지 확인하기 본문

프로그래머스 알고리즘 문제 기록/코딩 기초 트레이닝

접미사인지 확인하기

Lust3r 2024. 1. 18. 13:56
728x90

문제

https://school.programmers.co.kr/learn/courses/30/lessons/181908

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 답안 / 다른 사람들의 답안

import Foundation

func solution(_ my_string:String, _ is_suffix:String) -> Int {
    return my_string.indices.map { String(my_string[$0...]) }.contains(is_suffix) ? 1 : 0
}

- 이전 접미사 문제 때 다른 사람들의 답안으로 학습한 방법을 활용

- my_string의 indices 컬렉션으로 my_string의 부분 문자열을 String으로 형변환한 배열을 만들고

- is_suffix를 포함하면 1, 포함하지 않으면 0을 반환하도록 삼항 연산자를 사용

 

// 좋아요를 받은 답안

func solution(_ myString: String, _ isSuffix: String) -> Int {
    myString.hasSuffix(isSuffix) ? 1 : 0
}

-------------------------------------------------------------------
// 제일 많이 나온 답안

import Foundation

func solution(_ my_string:String, _ is_suffix:String) -> Int {
    return my_string.suffix(is_suffix.count) == is_suffix ? 1 : 0
}

(나는 간단히 풀 수 있는 것에 과도한 코드를 사용했음을..)

 

hasSuffix(_:) | Apple Developer Documentation

There's never been a better time to develop for Apple platforms.

developer.apple.com

- 첫 번째 답안은 hasSuffix를 통해  isSuffix가 있으면 1, 없으면 0을 반환

- 두 번째 답안은 is_suffix의 count만큼 suffix를 추출하여 is_suffix와 비교하여 같으면 1, 다르면 0을 반환

 

점수: ?