#P9109. [PA2020] Tekstówka

[PA2020] Tekstówka

题目描述

题目译自 PA 2020 Runda 4 Tekstówka

在去年我们在某社交网络的粉丝页上进行的 PA 中,参与者大声地问我们:「题呢?」。今年,我们决定满足您的期望。

给出了由英文小写字母组成的字符串 sstt。令 si,j (1ijs)s_{i,j}\ (1\le i\le j\le |s|) 表示由 ss 的第 ii 个到第 jj 个(包含两端)字符依次组成的子串。我们也同样定义 ti,jt_{i,j}

你的任务是处理 qq 次查询。每次查询用四个整数 i,j,k,li,j,k,l 表示,这里 1ijs,1klt1\le i\le j\le |s|,1\le k\le l\le |t|。对于每次查询,你需要输出子串 si,js_{i,j} 和子串 tk,lt_{k,l} 的最长公共子序列。

注:一个字符串的子序列是指一个字符串通过删除一些(可能不删除)字符且不改变剩余字符顺序得到的串。例如,potyczki\texttt{potyczki} 的子串可以是 tyki\texttt{tyki}pi\texttt{pi},但不能是 koty\texttt{koty}

我们称字符串 aabb 的公共子序列为既是 aa 的子序列,又是 bb 的子序列的子序列。

我们称字符串 aabb 的最长公共子序列为 aabb 的子序列中最长的一个。

输入格式

输入第一行包含三个整数 n,m,qn,m,q,分别表示 ss 串和 tt 串的长度与询问次数。

第二行包含一个由小写英文字母组成且长为 nn 的字符串 ss

第三行包含一个由小写英文字母组成且长为 mm 的字符串 tt

接下来 qq 行,每行四个整数 i,j,k,li,j,k,l,意义如题目描述。

输出格式

输出 qq 行,每行一个整数,表示对询问的回答。

5 6 7
abaab
babbaa
1 5 1 6
1 3 2 4
2 5 2 5
1 4 2 5
2 5 3 6
2 2 5 6
3 4 2 2
4
2
2
3
3
0
1

提示

数据范围

本题采用捆绑测试

  • 对于一些子任务,满足 n,m,q600n,m,q\le 600
  • 对于一些其他的子任务,满足 n,m600n,m\le 600
  • 对于一些其他的子任务,满足 q5×103q\le 5\times 10^3

对于上述情况,至少有一个子任务满足。

对于 100%100\% 的数据,保证 1n,m3×1031\le n,m\le 3\times 10^31q1051\le q\le 10^51ijn1\le i\le j\le n1klm1\le k\le l\le m