본문 바로가기
코딩테스트

[프로그래머스] 꼬리 문자열

by liz_devel 2025. 2. 13.

🗒 문제

 

 


📝 나의 문제풀이

class Solution {
    fun solution(str_list: Array<String>, ex: String): String {
        return str_list.filterNot{ it.contains(ex) }.joinToString("")
    }
}

 


📝 다른 사람의 문제 풀이

다른 사람의 문제 풀이는 좋아요 수가 높거나 많은 사람들이 푼 방법 기준으로 첨부하였습니다.

class Solution {
    fun solution(str_list: Array<String>, ex: String): String {
        var answer: String = ""
        return str_list.filterNot { ex in it }.joinToString("")
    }
}

🖊 문제 풀이 시 알면 좋을 것

 

filterNot { it.contains(ex) }

  • 특정 조건을 만족하지 않는 요소만 필터링
val list = listOf("apple", "banana", "cherry")
val filtered = list.filterNot { it.contains("a") }
println(filtered) // ["cherry"]

 

 

joinToString(separator: String)

  • 리스트의 요소를 문자열로 결합
val list = listOf("a", "b", "c")
println(list.joinToString("")) // "abc"

 

 

contains(substring: String)

  • 문자열이 특정 문자열을 포함하는지 확인
val str = "hello"
println(str.contains("ell")) // true

 

in 키워드 (ex in it)

  • contains와 같은 역할을 하지만 더 간결한 표현
val str = "hello"
println("ell" in str) // true

 

 

📌 차이점 정리

구분 contains in
표현 방식 it.contains(ex) ex in it
가독성 함수 호출 느낌이 강함 자연어처럼 읽힘
기능 동일 동일

 

즉, in이 contains보다 기능적으로 다른 것은 아니지만, 더 자연스럽고 간결한 문장처럼 보일 수 있다는 장점이 있음.

반응형