Programmers/LV1.

Lv1 | Swift -제일 작은 수 제거하기

ziziDev 2024. 6. 26. 11:11
반응형

문제 설명

길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.

제한 조건
  • n은 길이 10,000이하인 자연수입니다.
입출력 예nreturn
3 "수박수"
4 "수박수박"

나의 문제 풀이

func solution(_ n:Int) -> String {
    var result = ""
    
    for i in 1...n {
        result += (i % 2 == 1) ? "수" : "박"
    }
    
    return result
}

 

단순 반복문 for를 사용하여

하나씩 추가하는 방법을 사용하였다

 

다른 사람 풀이

func solution(_ n:Int) -> String {
    return "\(String(repeating: "수박", count: n / 2))\(n % 2 == 0 ? "" : "수")"
}

신박한 답변..

repeating을 사용해서 크기의 반 만큼 반복하게 하고 홀수인 경우 "수"를 하나 더 붙이는

답변은 내가 생각치 못해서 가지고 왔다

reduce는 생각해봤는데.. 이런 답변이 나올 줄이야

 

 

반응형