본문 바로가기

알고리즘/test

javascript) 프로그래머스 - 문자열 밀기

function solution(A, B) {
    var answer = 0;
    var cnt = 0;
    // 종료: 밀어봐서 길이만큼 밀었으면 -1을 반환 즉 한바퀴를 돌아도 목표값이 안나오면 에러
    var x = '';
    // 마지막 요소 추출해서 맨앞으로 붙여주기
    // while문으로 돌려서 한바퀴돌거나 같아지면 종료.
    if ( A === B ) {
        return 0;
    }
    while (1){
      cnt += 1;
      answer += 1;
      x = A.slice(-1);
      A = A.substring(0,A.length-1); 
      A = x + A;
      if (A === B){
        break
      }else if(cnt === A.length ){
          return -1;
        break
      }
    }  
    return answer;
}

slice, substring의 사용법을 숙지하여 쉽게 풀었다.