Algorithm/백준 알고리즘
백준_1543 문서 검색(자바) / 문자열
미스터로즈
2021. 7. 8. 18:30
시간&메모리 제한
문제
입력&출력
문제풀이
package com.Back;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Back_1543 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String temp = br.readLine();
String search = br.readLine();
int ans=0;
for (int i = 0; i < temp.length()-search.length()+1; i++) {
if(temp.substring(i, i+search.length()).equals(search)) {
ans++;
i+=search.length()-1;
}
}
System.out.println(ans);
}
}
- 이 문제는 문자열로 해결할 수 있는 문제입니다.
- temp에 전체 문자열을 넣고, search에 찾고자 하는 문자열을 넣어줍니다.
- for문을 돌릴 때, 전체 길이에서 찾고자 하는 길이를 빼고 +1 을 해준 값 만큼 돌려주면 됩니다.
- 동일한 문자열을 찾았을 때, 문자열 만큼 넘기면 찾은 문자열 다음으로 인덱스가 변경이 되는데, for문이 끝나는 동시에 또 1을 증가시키기 때문에 1을 감소 시켜줍니다.