Java/Coding Test

문자열 밀기 문제풀이

최고다최코딩 2023. 9. 17. 21:28
728x90

주어진 첫번째 문자열을 오른쪽으로 밀었을때 주어진 두번째과 동일하게 된다면 밀었던 횟수를 반환 그렇지 않으면 -1을 반환 

public int solution(String A, String B) {

int answer = 0;

int len = A.length();

A=A+A;

for (int i = 0; i < len; i++) {

String t =A.substring(len-i,2*len-i);

if(t.equals(B))return i;

}

return -1;

}

A문자열을 두번 이어붙여 이어지는 문자열 중 B와 일치하는 문자열이 있는지 확인

 

다른 사람풀이를 보았는데

public int solution2(String A, String B) {

return (B+B).indexOf(A);

}

그냥 B를 붙여서 A를 찾는다... indexOf()는 어차피 실패하면 -1을 반환해준다.