#P12838. [蓝桥杯 2025 国 B] 子串去重

    ID: 12614 Type: RemoteJudge 1000ms 256MiB Tried: 0 Accepted: 0 Difficulty: 3 Uploaded By: Tags>字符串二分2025蓝桥杯国赛

[蓝桥杯 2025 国 B] 子串去重

题目背景

洛谷数据默认字符串由小写字母构成。

题目描述

给定一个字符串 SS 以及若干组询问,每个询问包含两个区间 (La,Ra)(L_a, R_a), (Lb,Rb)(L_b, R_b),你需要判定 SLa,SLa+1,,SRaS_{L_a}, S_{L_a+1}, \ldots, S_{R_a}SLb,SLb+1,,SRbS_{L_b}, S_{L_b+1}, \ldots, S_{R_b} 去重后有多少个位置上的字符是不同的。

这里的去重指的是每个子串对于每种字符,只保留第一个出现的那个,后续出现的直接丢弃。

例如 aabcbac\tt{aabcbac} 在选中区间 [1,5][1,5] 时,得到子串 aabcb\tt{aabcb},去重后为 abc\tt{abc},选中区间 [3,6][3,6] 时得到 bcba\tt{bcba},去重后为 bca\tt{bca}

特别地,两个长度不同的子串中,较长串的多出的部分每个位置都视为不同。

输入格式

输入第一行包含一个字符串 SS

第二行包含一个整数 mm,表示询问次数。

接下来 mm 行,每行包含四个整数,表示一次询问。

输出格式

输出共 mm 行,每行一个整数对应每次询问的答案。

aabcbabacdab
3
1 1 2 2
1 10 6 9
4 7 9 12
0
1
2

提示

【评测用例规模与约定】

对于 40% 的评测用例,S10|S| \leq 10, m=1m = 1

对于 60% 的评测用例,S,m5000|S|, m \leq 5000

对于 100% 的评测用例,1S,m1051 \leq |S|, m \leq 10^5, 1LaRaS1 \leq L_a \leq R_a \leq |S|, 1LbRbS1 \leq L_b \leq R_b \leq |S|