博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
usaco Typo
阅读量:6985 次
发布时间:2019-06-27

本文共 733 字,大约阅读时间需要 2 分钟。

  题意:要你改变序列中的一个位置使得该括号序列达到平衡的状态,平衡就是你用一个栈去搞那个序列,匹配完毕之后该栈会是空的。ps:我当大家都知道如何用栈去做括号匹配。

  我发现标程有问题,也不知道自己是不是没有看清楚题目,不过我想,在标程里面加一个东西就可以达到目的,就是你在输入的时候判断下左右括号的个数差与2的关系大小,,如果大于2,那么结果必然是0,反之就按照标程里面那么去做。说实话我到现在都不清楚为什么最终最后括号的个数就可以是答案。。

  1.depth==-1,结果就是右括号的个数?当前的depth=-1,说明上一个位置的时候depth=0,那么到前一个位置的时候,之前的那段括号序列是平衡的,因为这个右括号的出现才使得该序列不平衡了,所以,我们可以采取两种措施来达到平衡,第一,我们可以从当前位置之前的位置中把一个右括号变成左括号来与当前位置的右括号匹配,我们暂且先不管之后的部分会出现一些什么东西;第二,我们可以把当前位置的右括号变成左括号,使之与后面部分中出现的右括号去匹配。但是,真的,可以不用管后面序列中出现的东西吗,我很是怀疑啊,该序列长度是奇数也符合?我想,如果标程中能加我说的那个个数==2这个东西的话,那么后续部分是对结果没有影响的吧。

  2.直到处理完序列,那么如果左括号个数大于0,那么结果便是左括号个数,这个很好理解,因为他里面有个处理就是当depth<=1的时候他把左括号个数置0,所以,实际的左括号个数应该是要多1的。

  善待每一天,努力做好自己。

  欢迎转载,注明出处。

转载于:https://www.cnblogs.com/RainingDays/archive/2013/05/13/3076150.html

你可能感兴趣的文章
使用ulimit设置文件最大打开数
查看>>
[Step By Step]SAP HANA PAL指数回归预测分析Exponential Regression编程实例EXPREGRESSION(模型)...
查看>>
VMware Data Recovery备份恢复vmware虚拟机
查看>>
solr多core的处理
查看>>
解决DeferredResult 使用 @ResponseBody 注解返回中文乱码
查看>>
C# WinForm开发系列 - TextBox
查看>>
28岁少帅统领旷视南京研究院,LAMDA魏秀参专访
查看>>
java文件传输
查看>>
Xen虚拟机迁移技术
查看>>
安装Sql Server 2005出现“性能监视器计数器要求”错误解决方法。
查看>>
[.NET领域驱动设计实战系列]专题八:DDD案例:网上书店分布式消息队列和分布式缓存的实现...
查看>>
Icomparer和Icomparable集合排序
查看>>
【poi xlsx报错】使用POI创建xlsx无法打开
查看>>
UNIX环境高级编程笔记之文件I/O
查看>>
DIV+CSS规范命名
查看>>
我的2013 Q.E.D
查看>>
2017 Multi-University Training Contest - Team 9 1002&&HDU 6162 Ch’s gift【树链部分+线段树】...
查看>>
4.5. Rspamd
查看>>
ArcMap中的名称冲突问题
查看>>
(转) 一张图解AlphaGo原理及弱点
查看>>