[프로그래머스_Lv1] 수박수박수박수박수박수?

Lee, Chankyu·2021년 9월 11일
0
post-thumbnail

수박수박수박수박수박수?

문제 링크

나의 풀이

def solution(n):
    answer = ''
    if n % 2 == 0:
        answer = "수박" * (n // 2)
    elif n == 1:
        answer = "수"
    else:
        answer = "수" + "박수" * (n // 2)
    return answer
  • n이 짝수일 경우, n이 1일 경우, n이 홀수일 경우(n=1인 경우제외)로 나누어 풀이하였다. 가장 쉽고 직관적인 풀이 방법이라고 생각하며 많은 사람들이 이와 유사하게 풀이한 것 같다.

다른 사람의 풀이

def water_melon(n):
    s = "수박" * n
    return s[:n]
  • "수박"을 2배 정도의 길이로 만들어 놓고 필요한 만큼 slicing하는 풀이법이다. 불필요한 메모리와 CPU연산을 사용하게 되는 코드 구성이지만 이러한 방식의 사고도 할 수 있는 능력을 키워야 겠다.
def water_melon(n):
    return "수박"*(n//2) + "수"*(n%2)
  • n을 2로 나누어서 나온 몫에 "수박"을 곱하고 나머지에 "수"를 곱하여 더하였다. 개인적으로 이 풀이법이 가장 마음에들고 간결하다고 생각한다.
profile
Backend Developer - "Growth itself contains the germ of happiness"

0개의 댓글