[프로그래머스] 문자열 밀기 - Python

2023. 7. 23. 15:16·Programming/알고리즘
목차
  1. 1. 문제
  2.  
  3. 2. Python code
  4.  
  5. 3. 풀이 
728x90

1. 문제

https://school.programmers.co.kr/learn/courses/30/lessons/120921

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다. 이것을 문자열을 민다고 정의한다면 문자열 A와 B가 매개변수로 주어질 때, A를 밀어서 B가 될 수 있다면 밀어야 하는 최소 횟수를 return하고 밀어서 B가 될 수 없으면 -1을 return 하도록 solution 함수를 완성해보세요.

 

2. Python code

def solution(A, B):
i = 0
if A == B:
return 0
else:
while i<len(A):
i +=1
A= A[-1] + A[:-1]
if A == B:
return i
return -1

 

3. 풀이 

문자열을 밀면서 다시 같은 문자열이 만들어질때까지 미는 횟수를 구하는 문제다.

while문에 i가 단어 A의 길이만큼 될때까지 돈다는 조건을 걸어주고 한번 돌때마다 i에 +1 씩 해준다.

문자열 한자리씩 미는건 마지막 문자 + 마지막 제외 나머지 문자열들 해서 해준다

 

저작자표시 비영리 변경금지 (새창열림)
  1. 1. 문제
  2.  
  3. 2. Python code
  4.  
  5. 3. 풀이 
'Programming/알고리즘' 카테고리의 다른 글
  • [프로그래머스] 추억 점수 - Python
  • [프로그래머스] OX퀴즈 - Python
  • [프로그래머스] 로그인 성공? - Python
  • [프로그래머스] 캐릭터의 좌표 - Python
해치
해치
뭐라도 하자
  • 해치
    hi there
    해치
  • 글쓰기 관리자
  • 전체
    오늘
    어제
    • ALL (70)
      • Programming (62)
        • Python (14)
        • SQL (13)
        • 알고리즘 (35)
      • Framework (4)
        • Airflow (3)
        • Django (1)
      • Infra (3)
        • Docker (3)
        • Linux (0)
      • AWS (0)
      • Dashboard (1)
  • 블로그 메뉴

    • 링크

    • 인기 글

    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    해치
    [프로그래머스] 문자열 밀기 - Python

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.