蹲一下第二题大家的思路

全部评论
第二题可以直接遍历每个字符,并且记录当前位置之前的 ( 的个数 = left,如果当前位置为 ) 则看前面是否 left > 0,是的话则 left-- 然后继续遍历下一个字符;如果 left = 0 则前面没有 ( 了,此时向后面找第一个 ( 的位置,交换这两个字符并记录交换次数,然后继续遍历即可;这样可以解决 81% 会超时,为了减少查找次数可以在向后找第一个 ( 时维护当前的位置,下次直接从记录的位置向后找,这样就不超时了,但还是81%,此时把总交换次数的类型从 int 换成 long 就能100%
2 回复 分享
发布于 昨天 21:01 湖南
贪心,然后额外维护一个(的位置指针就行了
点赞 回复 分享
发布于 昨天 21:02 浙江

相关推荐

点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务