728x90
반응형
문제 설명
길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
제한 조건- n은 길이 10,000이하인 자연수입니다.
n | return |
3 | "수박수" |
4 | "수박수박 |
풀이
이 문제는 먼저 문자열이 출력되어야 하는 패턴에 대해 알아봐야한다.
- "수박수박수박수..."를 살펴볼 때 제일 첫번째를 0번으로 생각하고 보면 0을 포함한 짝수번째는 "수"가 출력되고 홀수번째에는 "박"이 출력된다.
그렇다면 0~n까지 출력되는 숫자를 2로 나눈 나머지가 0이면 "수"를 넣고 0이 아니면 "박"이 넣은 리스트를 만들고 문자열로 변환하면 된다.
- 리스트 컴프리헨션과 조건문을 이용해 리스트를 생성
['수' if i%2==0 or i==0 else '박' for i in range(0,n)]
- 이 리스트를 join() 메서드로 문자열로 만들어 반환
def solution(n):
return ''.join(['수' if i%2==0 or i==0 else '박' for i in range(0,n)])
728x90
반응형
'코딩테스트 > Programmers' 카테고리의 다른 글
[Programmers/프로그래머스]없는 숫자 더하기 (0) | 2022.09.28 |
---|---|
[Programmers/프로그래머스]가운데 글자 가져오기 (2) | 2022.09.28 |
[Programmers/프로그래머스]음양 더하기 (0) | 2022.09.27 |
[Programmers/프로그래머스]제일 작은 수 제거하기 (0) | 2022.09.27 |
[Programmers/프로그래머스]나누어 떨어지는 숫자 배열 (0) | 2022.09.27 |