반복 글자 출력
문제 설명
길이가 n이고,
수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면
수박수박을 리턴하고 3이라면
수박수를 리턴하면 됩니다.
제한 조건
- n은 길이 10,000이하인 자연수입니다.
입출력 예
n | return |
---|---|
3 | 수박수 |
4 | 수박수박 |
문제 풀이 IDEA
수박의 갯수는 2로 나눈 몫이 우선적으로 있어야 하고 추가적으로 수박의 글자에서
2의 나머지인 (0, 1)인덱스를 slice해서 가져오자
나의 코드 ⭐
1 2 3 |
def solution(n): return((n//2)*"수박"+"수박"[:n%2] ) python은 string *int해주면 int만큼 반복 6이 들어올경우 3번 수박 반복 하고 5일경우 2번 반복
그리고 수박에서 mod가 0일경우 가져오는 string없고
mod가 1일경우 "수"를 가져와서 붙여준다
|
다른 코드⭐
1 2 3 4 5 6 7 8 9 10 11 12 | # 문제가 개편 되었습니다. 이로 인해 함수 구성이 변경되어, 과거의 코드는 동작하지 않을 수 있습니다. # 새로운 함수 구성을 적용하려면 [코드 초기화] 버튼을 누르세요. 단, [코드 초기화] 버튼을 누르면 작성 중인 코드는 사라집니다. def water_melon(n): s = "수박" * n 수박을 n만큼 s에 넣어주고 return s[:n] 그 string에서 n까지만 뽑아왔다 하지만 n이 커지면 메모리 낭비가 심할것 같다
|
눈여겨 보아야 할 점
python에서는 String*int를 지원하는데 이는 String을 int번 만큼 반복해준다
출처: 프로그래머스(https://programmers.co.kr/)