inblog logo
|
silver
    알고리즘문제풀기

    [알고리즘문제풀기] 문자열 밀기

    silver's avatar
    silver
    Feb 02, 2025
    [알고리즘문제풀기] 문자열 밀기
    Contents
    문제내가 작성한 정답다른 사람들의 정답

    문제

    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/120921

    내가 작성한 정답

    class Solution { public int solution(String A, String B) { int length = A.length(); char[] a = A.toCharArray(); for (int i = 0; i < length; i++) { if (B.equals(new String(a))) { return i; } char last = a[length - 1]; for (int j = length - 1; j > 0; j--) { a[j] = a[j - 1]; } a[0] = last; } return -1; } }

    다른 사람들의 정답

    class Solution { public int solution(String A, String B) { // B를 3번 반복하여 새로운 문자열 tempB를 생성 String tempB = B.repeat(3); // tempB에서 A가 처음 등장하는 위치(인덱스)를 찾아 // 만약 A가 포함되지 않으면 -1을 반환 return tempB.indexOf(A); } }
    class Solution { public int solution(String A, String B) { // B를 두 번 이어붙인 문자열을 생성(순환 문자열을 모두 포함할 수 있다)하여 // 이후 A가 이 새로운 문자열에 포함되어 있는지 확인 return (B + B).indexOf(A); } }
    Share article

    silver

    RSS·Powered by Inblog