🐍PYTHON/알고리즘
[Python] 프로그래머스 수박수박수박수? 파이썬 코드
wooaoe
2020. 8. 9. 17:34
문제 설명
길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다.
제한 조건
- n은 길이 10,000이하인 자연수입니다.
💡 나의 풀이
def solution(n):
return ('수박'*n) [:n]
- '수박' * n --> 입력받은 n만큼 '수박' 반복
- solution(3)이면 '수박수박수박' 이므로 slicing 필요
- 따라서 입력받은 n만큼 출력해주면 된다. [:n]
💡 다른 방식
def solution(n):
answer = ''
for i in range(n):
if i % 2 == 0:
answer += '수'
else:
answer += '박'
return answer
- i를 2로 나눈 값이 0이면 짝수 --> '수' 추가
- i를 2로 나눈 값이 0이 아니면 홀수 --> '박' 추가
- n = 3이면 i = 0, answer = '수' / i = 1, answer = '수박' / i = 2, answer = '수박수'
- n = 4이면 i = 0, answer = '수' / i = 1, answer = '수박' / i = 2, answer = '수박수' / i = 3, answer = '수박수박'