• 먼저, 문자열 A와 B를 문자 X를 기준으로 나눠서 LA/RA와 LB/RB로 만들어줍니다.

  • 그 후, LCS(LA, LB) + 1 + LCS(RA, RB)가 문제 조건을 만족하는 LCS가 됩니다.

    • 이때, 계산 과정에서 문자 Y를 무시해줘야 합니다.
  • 마지막으로, 구한 LCS의 길이보다 작거나 같은 가장 큰 소수를 구해서 출력해주면 됩니다.

  • LCS 6과 다른 점이 약간의 관찰밖에 없는데, 문제의 티어는 :ruby5:임에도 불구하고 관찰 난이도는 실버 정도밖에 되지 않는다는 점이 좀 아쉽네요.. N 제한을 5만까지 늘려서 억지로 난이도를 높인 느낌이 좀 들어요

  • 여담으로, 풀고 프로필 강제 갱신까지 했는데도 스트릭이 이어지지 않아서 한 문제를 더 풀어야 했습니다.