목록kmp (3)
어흥
문제 링크: https://www.acmicpc.net/problem/1701 1701번: Cubeditor 문제 Cubelover는 프로그래밍 언어 Whitespace의 코딩을 도와주는 언어인 Cubelang을 만들었다. Cubelang을 이용해 코딩을 하다보니, 점점 이 언어에 맞는 새로운 에디터가 필요하게 되었다. 오랜 시간 고생한 끝에 새로운 에디터를 만들게 되었고, 그 에디터의 이름은 Cubeditor이다. 텍스트 에디터는 찾기 기능을 지원한다. 대부분의 에디터는 찾으려고 하는 문자열이 단 한 번만 나와도 찾는다. Cubelover는 이 기능은 Cube www.acmicpc.net 1. 주의할 점 - KMP 알고리즘에 대해 알고 있어야 한다 2. 구현 - Substr함수를 통해 입력 받은 문자의..
문제 링크: https://www.acmicpc.net/problem/1786 1786번: 찾기 첫째 줄에, T 중간에 P가 몇 번 나타나는지를 나타내는 음이 아닌 정수를 출력한다. 둘째 줄에는 P가 나타나는 위치를 차례대로 출력한다. 예컨대, T의 i~i+m-1번 문자와 P의 1~m번 문자가 차례로 일치한다면, i를 출력하는 식이다. www.acmicpc.net 1. 주의할 점 - KMP 알고리즘에 대하여 알고 있어야 한다 - 공백 문자도 받을 수 있어야 한다 - 애매하게 알고 있다면 이전 게시글을 참고한다 https://imnotabear.tistory.com/117 [백준 16916] 부분 문자열 (JAVA) 문제 링크: https://www.acmicpc.net/problem/16916 16916..
문제 링크: https://www.acmicpc.net/problem/16916 16916번: 부분 문자열 첫째 줄에 문자열 S, 둘째 줄에 문자열 P가 주어진다. 두 문자열은 빈 문자열이 아니며, 길이는 100만을 넘지 않는다. 또, 알파벳 소문자로만 이루어져 있다. www.acmicpc.net 1. 주의할 점 - KMP 알고리즘에 대해 알고 있어햐 한다 2. 구현 - 문자열 P와 S를 입력 받는다 - getPi()함수를 통해 접미사와 접두사의 일치 길이를 나타내는 배열을 반환한다 - KMP 알고리즘을 통하여 진행한다 - KMP 알고리즘에 대해 간략히 설명을 하면 다음과 같다 Origin의 문자열은 i를 통해 문자를 가리키고, Pattern의 문자열은 j를 통해 문자를 가리킨다 Origin[i] == ..