Chef.Yeon
Code Cook
Chef.Yeon
전체 방문자
오늘
어제
  • 분류 전체보기 (230)
    • 게임 개발 (1)
      • Unity (1)
    • Android (27)
      • Kotlin (19)
      • 우아한테크코스 5기 (4)
    • Language (11)
      • 파이썬 (3)
      • Java (7)
    • DB (2)
      • SQL (16)
    • Spring (25)
    • 코딩테스트 (56)
    • Git (1)
    • TIL (85)
    • DevOps (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 백준
  • 문자열
  • kotlin
  • kibana
  • 내림차순
  • 레포지토리
  • spring
  • Docker
  • ec2
  • Wil
  • Android
  • 다이나믹 프로그래밍
  • elasticsearch
  • 코틀린
  • 코틀린 인 액션
  • webflux
  • 우아한테크코스
  • 에라토스테네스의 체
  • 프로그래머스
  • rsocket
  • til
  • SQL
  • grafana
  • enum
  • 프리코스
  • 코딩테스트
  • MariaDB
  • java
  • 파이썬
  • 안드로이드

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Chef.Yeon

Code Cook

코딩테스트

[프로그래머스/파이썬] 수박수박수박수박수박수?

2022. 9. 23. 14:08

문제 설명

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

 

제한 조건

  • n은 길이 10,000이하인 자연수입니다.

 

입출력 예

n return
3 "수박수"
4 "수박수박"

 

내 풀이

"수박"은 두 글자

n을 2로 나눈 몫 만큼 "수박" 에 곱하기

홀수일 경우 나머지 만큼 "수" 이어붙이기 (항상 나머지는 0 또는 1)

def solution(n):
    s = "수박" * (n//2) + "수" * (n%2)
    return s

 

다른 사람 풀이1

"수박"을 n 만큼 문자열로 만듦

3이면 "수박수박수박"

길이 n ex) n=3 으로 인덱싱하여 출력하면 "수박수"

문자열이 길어질 수록 시간이 길어질 것 같고 비효율적인 것 같음

그래도 나는 생각하지 못한 생각

def water_melon(n):
    s = "수박" * n
    return s[:n]

 

다른 사람 풀이2

1번과 비슷한 느낌

1번에서 처럼 문자열 s를 생성해 인덱싱한 것이 아니라 바로 인덱싱하여 리턴

def water_melon(n):
    return ("수박"*n)[0:n]

 

728x90

'코딩테스트' 카테고리의 다른 글

[프로그래머스/파이썬] 내적  (0) 2022.09.23
[프로그래머스/파이썬] 없는 숫자 더하기  (0) 2022.09.23
[프로그래머스/파이썬] 가운데 글자 가져오기  (0) 2022.09.22
[프로그래머스/파이썬] 음양 더하기  (0) 2022.09.22
[프로그래머스/파이썬] 제일 작은 수 제거하기  (0) 2022.09.21
    '코딩테스트' 카테고리의 다른 글
    • [프로그래머스/파이썬] 내적
    • [프로그래머스/파이썬] 없는 숫자 더하기
    • [프로그래머스/파이썬] 가운데 글자 가져오기
    • [프로그래머스/파이썬] 음양 더하기
    Chef.Yeon
    Chef.Yeon
    보기 좋고 깔끔한 코드를 요리하기 위해 노력하고 있습니다.

    티스토리툴바