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 |