问题2308--元旦礼物

2308: 元旦礼物

[命题人 : ]
时间限制 : 1 sec  内存限制 : 128 MB

提交

题目描述

要到元旦了,给你们送一个礼物:一个字符串。

该字符串是一个只含小写字母的字符串 s。对于一个长度为 x 的只含小写字母的字符串 s,我们定义 s 的“上一个字符串”是:所有长度为 x 且仅含小写字母的字符串按字典序排列后,恰好排在 s 之前一个的字符串。

例如,字符串 bcdbcd 的“上一个字符串”是 bcdbcc,而 aaaaaa 的“上一个字符串”不存在。

提示:长度为2的所有长度为x且仅含小写字母的字符串按字典序排列后为aa,ab,ac,ad,ae..az,ba,bb,bczx,zy,zz

现在,有 q 次询问,每次询问给出一个区间 [l,r],查询:s 的第 l 个到第  r 个字符组成的字符串的“上一个字符串”是否在 s 中出现?

如果查询区间对应的字符串不存在“上一个字符串”,也算作“上一个字符串”没有在 s 中出现。

1|s|200;1q100;1lr|s|;

注:|s|指字符串s长度。

输入

第一行是一个字符串,表示收到的字符串  s
第二行有一个整数,表示询问的次数 q
接下来 q 行,每行两个整数,表示一次询问的 l,r

输出

对于每次询问,输出两行,每行一个字符串。
对于每次询问的第一行输出,请输出对应字符串的“上一个字符串”。如果“上一个字符串”不存在,则输出NULL。
对于每次询问的第二行输出,如果对应字符串的“上一个字符串”在 s 中出现了,请输出 Happy New Year!,否则请输出 Happy Chinese New Year!。

样例输入 Copy

bcdbccaacbzz
5
1 3
5 8
1 1
11 12
7 7

样例输出 Copy

bcc
Happy New Year!
cbzz
Happy New Year!
a
Happy New Year!
zy
Happy Chinese New Year!
NULL
Happy Chinese New Year!