Module: 해싱


Problem

6 /8


허클베리 핀과 두 줄

Theory Click to read/hide

문자열 A의 해시가 hA 이고 문자열 B의 해시가 hB인 경우 문자열 AB의 해시를 빠르게 계산할 수 있습니다.
hAB = hA * p|B| + hB   <- 모듈로 모든 것을 계산
여기서 |비| - 문자열 B의 길이

Problem

Huckleberry Finn에는 길이 n이 같은 두 개의 문자열 s와 t가 있습니다.
Huckleberry Finn은 문자열이 동일한 접두사(시작)를 갖는 것을 좋아하므로 문자열 s의 두 문자를 바꿔 문자열 s와 t의 공통 접두사를 더 크게 만들 수 있습니다.
그러나 이 트릭은 다소 지루하므로 Huckleberry Finn은 전혀 수행하지 않거나 정확히 한 번만 수행합니다.

Huckleberry Finn이 얻을 수 있는 문자열 s와 t의 가장 긴 공통 접두사 길이를 결정하도록 도와주세요.


입력:
첫 번째 줄은 문자열 s와 t의 길이인 자연수 n(1 <= n <= 200000)을 포함합니다.
두 번째 줄에는 소문자 라틴 문자로 구성된 문자열 s가 포함됩니다.
세 번째 줄에는 소문자 라틴 문자로 구성된 문자열 t가 포함됩니다.

출력:
하나의 자연수를 인쇄하십시오 - 공통 접두사 s와 t의 최대 길이는 문자열 s의 두 문자를 최대 한 번 교환하여 얻을 수 있습니다.

예:
  <몸>
입력 출력
3
와이
추가
1
5
qdyid
xreac
0