https://school.programmers.co.kr/learn/courses/30/lessons/120921
문제 설명
문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다. 이것을 문자열을 민다고 정의한다면 문자열 A와 B가 매개변수로 주어질 때, A를 밀어서 B가 될 수 있다면 밀어야 하는 최소 횟수를 return하고 밀어서 B가 될 수 없으면 -1을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 0 < A의 길이 = B의 길이 < 100
- A, B는 알파벳 소문자로 이루어져 있습니다.
pop(): 배열에서 마지막 요소를 제거하고, 그 요소를 반환한다.
unshift(): 새로운 요소를 배열의 맨 앞쪽에 추가하고, 새로운 길이를 반환한다.
function solution(A, B) {
let arrA = [...A]
for(i=1; i<arrA.length; i++) {
if(A === B) {
return 0
} else {
arrA.unshift(arrA.pop())
if(arrA.join('') === B) {
return i
}
}
}
return -1
}
'JavaScript > 알고리즘 문제 풀기' 카테고리의 다른 글
[프로그래머스][연습문제] 문자열 내 p와 y의 개수 - JavaScript (0) | 2023.04.19 |
---|---|
[프로그래머스][연습문제] 평균 구하기 - JavaScript (0) | 2023.04.19 |
[프로그래머스][코딩테스트 입문] 옹알이(1) - JavaScript (0) | 2023.04.19 |
[프로그래머스][코딩테스트 입문] 다음에 올 숫자 - JavaScript (0) | 2023.04.19 |
[프로그래머스][코딩테스트 입문] 안전지대 - JavaScript (0) | 2023.04.19 |