문자열 바꿔서 찾기

김윤하·2023년 12월 12일
0

CodingTest

목록 보기
18/27
post-thumbnail

문제 설명

문자 "A"와 "B"로 이루어진 문자열 myString과 pat가 주어집니다. myString의 "A"를 "B"로, "B"를 "A"로 바꾼 문자열의 연속하는 부분 문자열 중 pat이 있으면 1을 아니면 0을 return 하는 solution 함수를 완성하세요.

제한사항

1 ≤ myString의 길이 ≤ 100
1 ≤ pat의 길이 ≤ 10
myString과 pat는 문자 "A"와 "B"로만 이루어진 문자열입니다.

class Solution {
    public int solution(String myString, String pat) {
        int answer = 0;
        String myString2 = "";
        String[] myStringList = myString.split("");
        for(int i = 0; i<myStringList.length; i++){
            if(myStringList[i].equals("A")){
                myStringList[i]="B";
            }
            else if(myStringList[i].equals("B")){
                myStringList[i]="A";
            }
            myString2+=myStringList[i];
        }
        if(myString2.contains(pat)){
            answer = 1;
        }
        return answer;
    }
}
  • myStringList 배열에 myString을 한자씩 쪼개서 저장함.

  • myStringList의 length만큼 for문을 돌리면서 myStringList[i]의 값이 A면 B로 바꾸고, B면 A로 바꿔서 myStringList[i]에 넣고 myStringList[i] 값을 myString2에 더함.

  • contains함수를 사용하여 myString2 문자열에 pat문자열이 포함되어 있는지 확인함.

  • contains()
    boolean contains(CharSequence s)
    contains() 함수는 대상 문자열에 특정 문자열이 포함되어 있는지 확인하는 함수. (대/소문자를 구분)

0개의 댓글