728x90
반응형
SMALL

문제 설명

알파벳으로 이루어진 문자열 myString과 pat이 주어집니다. myString의 연속된 부분 문자열 중 pat이 존재하면 1을 그렇지 않으면 0을 return 하는 solution 함수를 완성해 주세요.

단, 알파벳 대문자와 소문자는 구분하지 않습니다.


제한사항

  • 1 ≤ myString의 길이 ≤ 100,000
  • 1 ≤ pat의 길이 ≤ 30
  • myString과 pat은 모두 알파벳으로 이루어진 문자열입니다.

입출력 예

myString pat return

"AbCdEfG" "aBc" 1
"aaAA" "aaaaa" 0

입출력 예 설명

입출력 예 #1

  • "AbCdEfG"의 0~2번 인덱스의 문자열은 "AbC"이며, 이는 pat인 "aBc"와 같습니다. 따라서 1을 return 합니다.

입출력 예 #2

  • myString의 길이가 pat보다 더 짧기 때문에 myString의 부분 문자열 중 pat와 같은 문자열이 있을 수 없습니다. 따라서 0을 return 합니다.
package Lv0;
/*
알파벳으로 이루어진 문자열 myString과 pat이 주어집니다.
myString의 연속된 부분 문자열 중 pat이 존재하면 1을 그렇지 않으면 0을 return 하는 solution 함수를 완성해 주세요.

단, 알파벳 대문자와 소문자는 구분하지 않습니다.
 */
public class H181878 {
	public int solution(String myString, String pat) {
		int answer = 0;
		String lowerMyString = myString.toLowerCase();
		String lowerPat = pat.toLowerCase();

		for (int i = 0; i <= lowerMyString.length() - lowerPat.length(); i++) {
			String substring = lowerMyString.substring(i, i + lowerPat.length());

			if (substring.equals(lowerPat)) {
				answer = 1;
				break;
			}
		}
		return answer;
	}
}

myString과 pat을 모두 소문자로 변환

myString의 모든 가능한 부분 문자열에 대해 반복문을 수행하며, 각 부분 문자열이 pat와 같은지 확인

만약 같은 부분 문자열이 발견되면 answer를 1로 설정하고 반복문을 종료

pat이 myString의 연속된 부분 문자열에 존재할 때 1을 반환하고, 그렇지 않을 때 0을 반환

728x90
반응형
LIST

'알고리즘 > 프로그래머스 JAVA LV.0' 카테고리의 다른 글

접미사인지 확인하기  (0) 2023.05.03
문자열 바꿔서 찾기  (0) 2023.05.03
접두사인지 확인하기  (0) 2023.05.03
배열에서 문자열 대소문자 변환하기  (0) 2023.05.02
이어 붙인 수  (0) 2023.05.02

+ Recent posts