比赛场次 | 637 |
---|---|
比赛名称 | 20241022 |
比赛状态 | 已结束比赛成绩 |
开始时间 | 2024-10-22 08:00:00 |
结束时间 | 2024-10-22 12:00:00 |
开放分组 | 全部用户 |
注释介绍 |
题目名称 | 解压缩 |
---|---|
输入输出 | extract.in/out |
时间限制 | 1000 ms (1 s) |
内存限制 | 512 MiB |
测试点数 | 10 简单对比 |
用户 | 结果 | 时间 | 内存 | 得分 |
---|---|---|---|---|
Davinci | AAAAAAAAAA | 0.031 s | 3.40 MiB | 100 |
darkMoon | AAAAAAAAAA | 0.033 s | 3.49 MiB | 100 |
┭┮﹏┭┮ | AAAAAAAAAA | 0.037 s | 3.41 MiB | 100 |
flyfree | AAAAAAAAAA | 0.039 s | 3.34 MiB | 100 |
健康铀 | AAAAAAAAAA | 0.172 s | 18.66 MiB | 100 |
蜀山鸭梨大 | AAWAAWWWAW | 0.035 s | 3.35 MiB | 50 |
wdsjl | TTTAATTTTT | 16.066 s | 291.21 MiB | 20 |
小金 | EEEEEEEEEE | 2.143 s | 3.17 MiB | 0 |
神犇最近在研究字符串算法。
神犇发明了一种字符串压缩算法:对于字符串S中的若干个连续相同的子串T,可以被压缩为[DT],其中D是一个非负整数,表示子串T连续出现了多少次。
例如,字符串ABABABABABAB可以被压缩为[6AB],当然也可以压缩为[2[3AB]]、[3[2AB]]、[2[2AB]AB]等。类似[6AB]的压缩称为一重压缩,类似[2[3AB]]和[2[2AB]AB]的称为二重压缩,依此类推。
显然,一个字符串的压缩结果可能有若干种,算法实现比较困难,所以神犇自己实现了,现在他决定将解压缩的算法交给你(未来的神犇)来训练自己的编程能力。
一行一个字符串S,表示压缩后的字符串。
一行一个字符串,表示字符串解压缩之后的结果。
[2BILI]
BILIBILI
CSP[2[2TASK]][4AC]AK
CSPTASKTASKTASKTASKACACACACAK
A[2[3[5B]]][3[2C]D[3E]]
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$的正整数。