https://www.acmicpc.net/problem/1543
처음에는 for문으로 쭉 순회하면서 풀어봤는데 예제는 맞고 반례를 통과하지 못해서 틀렸다..
한 글자씩 비교하는 것 보다는 indexOf 메서드를 사용해서 시작 위치를 찾아 그 시작위치에서 단어 길이만큼 더하고 그걸 이어서 찾아가는 형태로 코드를 짜면 풀 수 있었다
s1.indexOf(s2, cnt)로 s1에서 cnt 인덱스부터 s2가 있는지 찾을 수 있다
public static int solution(String s1, String s2){
int cnt = 0;
int res = 0;
while (cnt < s1.length()){
int start = s1.indexOf(s2, cnt);
if (start < 0) return res;
else {
cnt = start + s2.length();
res++;
}
}
return res;
}
'자바 알고리즘 > 백준' 카테고리의 다른 글
7785 회사에 있는 사람 (0) | 2024.03.08 |
---|---|
1181 단어정렬 (0) | 2024.03.07 |
백준 2817 (1) | 2024.02.16 |
백준 11005 진법 변환 2 (1) | 2024.01.31 |
백준 10989 (1) | 2024.01.29 |