문제 설명
문자열 myString과 pat이 주어집니다. myString에서 pat이 등장하는 횟수를 return 하는 solution 함수를 완성해 주세요
제한사항
- 1 ≤ myString ≤ 1000
- 1 ≤ pat ≤ 10
풀이
class Solution {
public int solution(String myString, String pat) {
int answer = 0;
for (int i = 0; i <= myString.length() - pat.length(); i++) {
if (myString.substring(i, i + pat.length()).equals(pat)) {
answer++;
}
}
return answer;
}
}
- for문을 통해 문자열을 순회할 때, pat의 길이만큼 고려해주어야 한다 (주의!!)
- 예를 들어 myString의 길이가 6, pat의 길이가 3일 때 0~3 인덱스까지만 순회하면 된다
- substring() 을 통해 pat 길이만큼 부분 문자열을 추출하여 비교하고 일치하면 answer을 1증가시킨다
- 문자열에서 패턴의 길이를 초과하지 않도록 하기 위함!
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
'알고리즘 & 코딩 테스트 > [Java]프로그래머스' 카테고리의 다른 글
| [프로그래머스_Java] Lv.0 배열의 길이를 2의 거듭 제곱으로 만들기 (1) | 2024.01.04 |
|---|---|
| [프로그래머스_Java] Lv.0 세 개의 구분자 (1) | 2024.01.04 |
| [프로그래머스_Java] Lv.0 수열과 구간 쿼리 4 (2) | 2024.01.04 |
| [프로그래머스_Java] Lv.0 수열과 구간 쿼리 3 (0) | 2024.01.04 |
| [프로그래머스_Java] Lv.0 수열과 구간 쿼리 1 (0) | 2024.01.04 |