当前你的浏览器版本过低,网站已在兼容模式下运行,兼容模式仅提供最小功能支持,网站样式可能显示不正常。
请尽快升级浏览器以体验网站在线编辑、在线运行等功能。

建议使用的浏览器:

谷歌Chrome 火狐Firefox Opera浏览器 微软Edge浏览器 QQ浏览器 360浏览器 傲游浏览器

1602:Zip

题目描述
People are pursuing enhancing the file compression rate for long time. Recently, someone proposed an algorithm, which only rearrange the file, not compressing file. But we can achieve much more compressoin rate than ever before after adapting the file using this algorithm.
We define a string's head as its first character, and tail as its last character.
Now I'll show you how this algorithm works: there is a string ,said S, consists of n characters. First we construct n strings from it, the i'th string is obtained by moving the head of the i-1'th string to its tail. Then we sort the n strings by their heads, if two strings' heads are equal, sort them by the two heads' position in S. After sort, we can obtain a new string S' consists of the tails in the sorting result strings.
It's obvious that the length of S' is also n, and it contains all the characters in S. At last, you must output S' and the position of the first character of S in S',an integer,p.
For example:
S: example
1. construct n strings
example
xamplee
ampleex
mpleexa
pleexam
leexamp
eexampl
2. Sort these string as mentioned
ampleex
example
eexampl
leexamp
mpleexa
pleexam
xamplee
3. Construct S' by the tails of sorting results and output
xelpame               S'

7 p

Since the occurrence of the same English words is high-frequent, we can achieve high compression rate of S'. Although this algorithm utilizes English word's occurrence characteristics, people also find this algorithm does well for most filetype's compression.
You task is simple, it's not compressing the file. You should construct S' from S and reconstruct S from given S' and p.
输入解释
The input contains only one case, the first line is a char C indicating which job you should do.

When C is 'A' , that means you should construct S' from S. The next line is an integer n(1 <=n<=10000), the length of S. The third line is the string S.

When C is 'B' , that means you should reconstruct S from S'. The next line is an integer n(1 <=n<=10000), the length of S'. The next line is the string S', the fourth line is an integer p.
输出解释
When C is 'A' , You should output two lines, the first of which is S' and second is p.

When C is 'B' ,You should output just one line containing the string S.
输入样例
Sample input 1:
A
7
example
Sample input 2:
B
7
xelpame
7
输出样例
Sample output 1:
xelpame
7
Sample output 2:
example

该题目是Virtual Judge题目,来自 北京大学POJ

题目来源 浙江OI 2001

源链接: POJ-1602

最后修改于 2020-10-29T06:08:32+00:00 由爬虫自动更新

共提交 0

通过率 --%
时间上限 内存上限
1000 10000