单点时限: 2.0 sec
内存限制: 256 MB
恺撒密码实质上可以认为是在集合 Alphabet=a,b,c,d,…,y,z 和 Alphabet 建立了一个双射 f,使得每一个字母恰好有一个密文与之对应。密码的核心便在于这个 f,如果 f 泄露了,由于是双射,所以 f−1 也能求出,所有的密码也就能破解了。但猜出这个 f 是不容易的,显然 f 的数量与 Alphabet 全排列数量相同,是 26!。
但是,如果有一些别的条件就不一样了。比如你有一个密文字符串 s,同时已知明文 s′ 中出现了子串 abcdefghijklmnopqrstuvwxyz(你可以不用检查了,就是 26 个字母按顺序)。f 的数量会大幅减少,甚至可以存储在 32 位整数范围内。
abcdefghijklmnopqrstuvwxyz
本题的要求是要求出有多少个这样的 f 满足要求。
一行一个字符串 s (1≤|s|≤5⋅105)。由小写英文字母组成。
输出答案。
zyxwvutsrqponmlkjihgfedcba
1
abcdefghijklmnopqrstuvwxyzyxwvutsrqponmlkjihgfedcba
2