#P1456. 2024.10.16-秋招-第2题-求最大括号表达式
-
ID: 144
Type: Default
1000ms
256MiB
Tried: 236
Accepted: 79
Difficulty: 5
Uploaded By:
TaZi
Tags>递归排序
2024.10.16-秋招-第2题-求最大括号表达式
题目内容
有效括号表达式定义:
1、空串和()均为有效表达式。
2、当A、B为有效表达式时,则(A)、AB也均是有效的括号表达式,比如:A为(),则 ()()和(())$均为有效括号表达式。
括号表达式的值:左括号用1表示,右括号用0表示,该二进制序列对应的值即为括号表达式的值。
现给定一个有效括号表达式,对其中任意两个相邻的子"有效表达式”进行交换,求在任意次数(包含0次)的交换之后,能够得到的值最大的括号表达式。
说明:
1、表达式自身是有效表达式。
2、交换的必须是相邻且有效的。
输入描述
给定一个有效括号表达式,只包含左右括号"()”。 表达式的长度不超过60。
输出描述
在任意次数(包含0次)的交换之后,能够得到的值最大的括号表达式
样例1
输入
((()(())))
输出
(((())()))
说明
将在s[2]出现的有效表达式“()”和在s[4]出现的有效表达式(())进行交换。 对应二进制: 11 10 1100 00转换为11 1100 10 00
样例2
输入
()()
输出
()()
说明
无需交换,交换后也一样
样例3
输入
()(())((()(())))
输出
(((())()))(())()
说明
交换s[8−9]与s[10−13],得到()(())(((())()))
交换s[2−5]与s[6−15],得到()(((())()))(())
交换s[0−1]与s[2−11],得到(((())()))()(())
交换s[10−11]与s[12−15],得到(((())()))(())()
通知
扫码备注华为交流群~期待您的到来
- 湘ICP备2023007293号
- Worker 0, 42ms
- Powered by Hydro v4.14.1 Community