문제 링크
- http://icpc.me/16854
사용 알고리즘
- 해싱
시간복잡도
- $O(N^2)$
풀이
어떤 부분 문자열이 올바른 괄호 문자열인지 판단하는 것은 간단합니다. 대칭 문자열인지 판단하는 방법을 알아봅시다.
정해는 어떤 똑똑한 방법을 이용하는 것으로 보이지만, 사실 해싱으로 간단하게 판별할 수 있습니다.
입력으로 들어온 문자열 $S$와 $S$를 뒤집은 문자열 $S’$의 해시를 전처리하면, 두 문자열의 특정 지점의 부분 문자열이 같은지 확인하는 것으로 대칭 문자열을 판별해낼 수 있습니다. 자세한 방법은 아래 코드를 참고해주세요.
전체 코드
1 |
|