比赛场次 637
比赛名称 20241022
比赛状态 已结束比赛成绩
开始时间 2024-10-22 08:00:00
结束时间 2024-10-22 12:00:00
开放分组 全部用户
注释介绍
题目名称 解压缩
输入输出 extract.in/out
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
GravatarDavinci AAAAAAAAAA 0.031 s 3.40 MiB 100
GravatardarkMoon AAAAAAAAAA 0.033 s 3.49 MiB 100
Gravatar┭┮﹏┭┮ AAAAAAAAAA 0.037 s 3.41 MiB 100
Gravatarflyfree AAAAAAAAAA 0.039 s 3.34 MiB 100
Gravatar健康铀 AAAAAAAAAA 0.172 s 18.66 MiB 100
Gravatar蜀山鸭梨大 AAWAAWWWAW 0.035 s 3.35 MiB 50
Gravatarwdsjl TTTAATTTTT 16.066 s 291.21 MiB 20
Gravatar小金 EEEEEEEEEE 2.143 s 3.17 MiB 0

解压缩

★★   输入文件:extract.in   输出文件:extract.out   简单对比
时间限制:1 s   内存限制:512 MiB

【题目背景】

神犇最近在研究字符串算法。

【题目描述】

神犇发明了一种字符串压缩算法:对于字符串S中的若干个连续相同的子串T,可以被压缩为[DT],其中D是一个非负整数,表示子串T连续出现了多少次。

例如,字符串ABABABABABAB可以被压缩为[6AB],当然也可以压缩为[2[3AB]]、[3[2AB]]、[2[2AB]AB]等。类似[6AB]的压缩称为一重压缩,类似[2[3AB]]和[2[2AB]AB]的称为二重压缩,依此类推。

显然,一个字符串的压缩结果可能有若干种,算法实现比较困难,所以神犇自己实现了,现在他决定将解压缩的算法交给你(未来的神犇)来训练自己的编程能力。

【输入格式】

一行一个字符串S,表示压缩后的字符串。

【输出格式】

一行一个字符串,表示字符串解压缩之后的结果。

【样例1输入】

[2BILI]

【样例1输出】

BILIBILI

【样例2输入】

CSP[2[2TASK]][4AC]AK

【样例2输出】

CSPTASKTASKTASKTASKACACACACAK

【样例3输入】

A[2[3[5B]]][3[2C]D[3E]]

【样例3输出】

ABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCDEEECCDEEECCDEEE

样例下载

【数据规模与约定】

对于$20\%$的数据,最多只有一重压缩。

对于$40\%$的数据,最多只有三重压缩。

对于另外$10\%$的数据,保证所有压缩格式[DT]中的D=1,T为合法的压缩字符串。

对于$100\%$的数据,$|S|\leq 500$,解压缩后的字符串长度不超过$2\times 10^4$,最多只有十重压缩,输入保证只含有[]、数字字符和大写字母且压缩字符串无需判定是否合法。

合法的压缩字符串定义为:

1. 完全由大写字母构成的字符串;

2. 如果字符串A和字符串B是合法压缩字符串,那么AB也是合法压缩字符串。

3. 如果字符串A是合法压缩字符串,那么[DA]是一个合法压缩字符串,其中D为不包含前导$0$的正整数。