반응형
https://www.acmicpc.net/problem/16916
16916번: 부분 문자열
첫째 줄에 문자열 S, 둘째 줄에 문자열 P가 주어진다. 두 문자열은 빈 문자열이 아니며, 길이는 100만을 넘지 않는다. 또, 알파벳 소문자로만 이루어져 있다.
www.acmicpc.net
> 내 코드
import sys
input = sys.stdin.readline
string = input().strip()
part = input().strip()
if part in string:
print(1)
else:
print(0)
☞ 시간 초과
> KMP 알고리즘
문제 자체가 쉬워서 쉽게 접근했다가 자꾸 시간 초과가 발생하여 구글링을 해봤다.
2022년까지는 나처럼 쉽게 접근해서 푼 사람이 많았는데, 그 이후에 문제 난이도가 좀 높아졌는지 2023년에는 되지 않았다..
혹시 import sys를 안 써서 시간 초과가 된 것이 아닌가 싶어 추가도 해보았지만 마찬가지로 시간 초과 에러가 발생했다.
알아보니 KMP 알고리즘으로 풀어야 풀린다고 한다.
생소하기는 하지만, 알아두면 나쁠 건 없어서 연습해보았다.
반응형
'코딩테스트 대비 > 백준(BOJ)' 카테고리의 다른 글
| [Python][백준/BOJ] 1094번 : 막대기 (0) | 2023.06.23 |
|---|---|
| [Python][백준/BOJ] 1049번 : 기타줄 (0) | 2023.06.23 |
| [Python][백준/BOJ] 10757번 : 큰 수 A+B (0) | 2023.06.22 |
| [Python][백준/BOJ] 9093번 : 단어 뒤집기 (0) | 2023.06.19 |
| [Python][백준/BOJ] 11931번 : 수 정렬하기 4 (0) | 2023.06.19 |