Rikka with Parenthesis II
题目链接
题目大意
给你一个由”(“和”)”组成的串,要你求通过一次交换,这个串在交换后是否合法。
关于合法:
- 空串合法
- ”()”合法
- 如果X合法,(X)合法
- 如果X,Y合法,XY合法
题解
贪心
注意到一个”(“必须要一个”)”来与之相配,所以从最左边开始向右边找,遇到一个”(“cnt就+1,遇到一个”)”cnt就-1,在第一个cnt=-1的时候把cnt清零(表明这个位置需要交换)再继续往后处理,注意在此过程中cnt是不能等于-2的(如果等于-2的话最后一定有两个串不能匹配)这样一直处理到串的末尾,如果cnt=1(剩下一个交换的位置),则说明可以,否则不行。