FrontEnd
Javascript
Diary
ML
CS
Django
Algorithm
AWS
Co-Work
HTML
CSS
Python
React
ReactNative

#7 알고리즘 연습 - 같은 문자 반복(Python)

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

제한 조건

n은 길이 10,000이하인 자연수입니다.

입출력 예

n return
3 수박수
4 수박수박

문제풀이 IDEA 수박의 갯수는 2로 나눈 몫이 우선적으로 있어야 하고 추가적으로 수박의 글자에서 2의 나머지인 (0, 1)인덱스를 slice해서 가져오자

내 풀이 🏆

def solution(n):
    return((n//2)*"수박"+"수박"[:n%2] )   
    #python은 string *int해주면 int만큼 반복
    #6이 들어올경우 3번 수박 반복 하고 5일경우 2번 반복 
    #그리고 수박에서 mod가 0일경우 가져오는 string없고
    #mod가 1일경우 "수"를 가져와서 붙여준다
                                        

다른 풀이 🏆

def water_melon(n):
    s = "수박" * n                           #수박을 n만큼 s에 넣어주고
    return s[:n]                             #그 string에서 n까지만 뽑아왔다

                                             #하지만 n이 커지면 메모리 낭비가 심할것 같다