Algorithm

[프로그래머스] Level1 | 수박수박수박수박수박수? - 파이썬(Python) | 연습문제 | 문자열 슬라이싱

토오오끼 2021. 10. 31. 22:27
728x90
반응형

https://programmers.co.kr/learn/courses/30/lessons/12922

 

코딩테스트 연습 - 수박수박수박수박수박수?

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

programmers.co.kr

프로그래머스에서 레벨 1 '수박수박수?' 문제를 풀었다.


n이 짝수인지 홀수인지를 구별해야할 것 같았고 문자열 슬라이싱을 하면 원하는 길이만큼 문자열을 출력할 수 있을 것 같았다.

def solution(n):
    answer = ''
    string = '수박'
    
    ans = string * int(n/2 + 1)
    
    answer = ans[:n]
    
    return answer

if문을 사용하여 n이 홀인지 짝인지 구별해야하나 고민을 했는데,

string에 '수박'이라는 문자열을 지정해준 뒤에 n을 2로 나눈 몫에 1을 더해 수박수박수박 이런 형태의 ans 문자열을 만들었다. 이 ans 문자열에서 입력된 n의 길이만큼 단어들을 잘라낸다면 홀,짝 구별을 하지 않고도 n이 1인 상황에서도 "수"라는 결과가 제대로 나올 것 같았다.

 

다행히 문제 없이 통과 되었고 테스트케이스에 n이 1일 경우를 추가하여 실행해 보니 문제 없이 실행되었다.


해당 문제 풀이 코드

 

GitHub - YOOHYOJEONG/algorithm_practice: 알고리즘 공부 및 코딩테스트 준비

알고리즘 공부 및 코딩테스트 준비. Contribute to YOOHYOJEONG/algorithm_practice development by creating an account on GitHub.

github.com

 

728x90
반응형