中国电信计算机笔试

两道字符串题都过了,括号串调了半天,还是没做出来,有没有大佬教教

全部评论
可以这样想 从左到右进行匹配 因为题目保证有合法解,所以左括号数=右括号数。从左到右线性遍历,第一个匹配不上的一定是右括号多了一个,这个时候只需要把这个右括号和从右往左找第一个左括号进行交换,就是最优解,线性遍历统计即可。
2 回复 分享
发布于 09-27 11:04 黑龙江
用一个栈,左括号入栈右括号出栈,cnt统计匹配不上的右括号,交换次数就是(cnt+1)/2,向上取整。问问佬第2道怎么写啊
点赞 回复 分享
发布于 09-27 11:08 天津
最后一题其实就是求”逆序对“的数量,如果是( 就入栈,如果是)就看栈是否空,如果空那么cnt++,如果不是空就出栈,最后的结果就是cnt/2且向上取整,向上取整是因为如果cnt为1或2,都最少需要交换一次。
点赞 回复 分享
发布于 09-27 11:04 云南
匹配不上的左括号或右括号数+1再除2
点赞 回复 分享
发布于 09-27 11:00 北京

相关推荐

跨考计算机类,第一次写代码也能过一题,有没有机会啊
槛外呆燕:我感觉机会不大,大厂笔试做多了,感觉电信的真的太简单了,而且很多佬们会来卷三大运营商的岗位
投递中国电信等公司10个岗位
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

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