해당 문제는 여기에서 확인하실 수 있습니다.
def solution(A, B):
answer = 0 # 민 횟수를 저장할 변수 초기화
if len(A) != len(B): # A와 B의 길이가 다르면 밀어서 만들 수 없음
return -1
if A == B: # A와 B가 이미 같다면 밀 필요 없음
return 0
temp_a = A # A를 직접 변경하지 않고 복사본을 사용
for i in range(len(A)):
temp_a = temp_a[-1] + temp_a[:-1] # 오른쪽으로 한 칸 밀기: 마지막 문자를 맨 앞으로 이동
answer += 1 # 민 횟수 증가
if temp_a == B: # 민 결과가 B와 같다면 현재까지 민 횟수 반환
return answer
if temp_a == A: # 다시 원래 A와 같아졌는데 B가 아니면 만들 수 없음
return -1
return -1 # for 루프를 모두 돌았는데 B를 만들지 못했다면 -1 반환