-
[프로그래머스 / Python] 수박수박수박수박수박수? | 초코더알고리즘/프로그래머스 2020. 1. 2. 22:06
문제 설명
길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다.
제한 사항
-n은 길이 10,000이하인 자연수입니다.
입출력 예
n
return
3
수박수
4
수박수박
접근법
저는 반복문을 사용해서 n번만큼 수, 박을 각각 list에다가 넣어주었습니다.
i가 0일때는 수,
i가 1일때는 박,
i가 2일때는 수, ,,,
홀수일때는 '수'를 짝수일때는 '박'을 list에 원소로 저장해준뒤
다시 리스트를 join으로 이어붙여서 string형태로 출력해주었습니다.
나의 코드
def solution(n): sb_list = [] for i in range(n): if i%2 == 0: sb_list.append("수") else: sb_list.append("박") sb = "".join(sb_list) return sb
다른 코드
def solution(n): return "수박"*(n//2) + "수"*(n%2)
엄청 간단하네요.... ㄷ ㄷ
n을 2로 나눈 값이 반복되는 횟수입니다. 그 횟수만큼 '수박'을 붙여주고, 홀수일 경우에는 뒤에 "수"가 한번 더 붙습니다.
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 / Python] 두 정수 사이의 합 | 초코더 (0) 2020.01.03 [프로그래머스 /Python] 2016년 | 초코더 (0) 2020.01.03 [프로그래머스 / Python] 서울에서 김서방 찾기 | 초코더 (0) 2020.01.02 [프로그래머스 / Python] 문자열 내림차순으로 배치하기 | 초코더 (0) 2019.12.30 [프로그래머스 / Python] 문자열 내 마음대로 정렬하기 | 초코더 (0) 2019.12.29