[Programmers] Lv0 문자열 밀기 JAVA
2023. 1. 19. 22:31ㆍCS/자료구조 & 알고리즘
728x90
문제 출처
[프로그래머스 코딩 테스트 연습]
https://school.programmers.co.kr/learn/courses/30/lessons/120921
문제 풀이
- 최대 검사 횟수는 위에 보이는 것처럼 문자열의 길이의 -1 이다. (소스 코드에서는 0회 부터 시작하고 검사의 순사상 문자열 길이 만큼만 반복해준다.)
- 최대 검사 횟수를 만큼 반복하여 문자열을 밀어 B와 비교를 한다
- 비교했을시 같으면 해당 횟수를 리턴한다.
- 만약 최대 검사 횟수가 넘어가면 -1을 리턴한다.
소스 코드
class Solution {
public int solution(String A, String B) {
StringBuilder sbA = new StringBuilder(A);
for (int index = 0; index < A.length(); index++) {
if (B.equals(sbA.toString()))
return index;
char save = sbA.charAt(sbA.length()-1);
sbA.deleteCharAt(sbA.length()-1);
sbA.insert(0, save);
}
return -1;
}
}
728x90
'CS > 자료구조 & 알고리즘' 카테고리의 다른 글
[Programmers] Lv0 7의 개수 JAVA (0) | 2023.01.20 |
---|---|
[Programmers] Lv0 잘라서 배열로 저장하기 JAVA (0) | 2023.01.20 |
[Programmers] Lv0 종이 자르기 JAVA (0) | 2023.01.18 |
[Programmers] Lv0 연속된 수의 합 JAVA (0) | 2023.01.18 |
[Programmers] Lv0 다음에 올 숫자 JAVA (0) | 2023.01.18 |