![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
求大神帮看个C++题
杭电3788小弟看了好久没看懂题意,求大神给说说题意就好,他给的最后那两种清空为什么是wronganswer谢谢...
杭电 3788
小弟看了好久没看懂题意,求大神给说说题意就好,他给的最后那两种清空为什么是wrong answer
谢谢 展开
小弟看了好久没看懂题意,求大神给说说题意就好,他给的最后那两种清空为什么是wrong answer
谢谢 展开
2个回答
展开全部
感觉这个是个语文题 疯狂
我的理解(不知道对不对,我也没做过)
三条是依次来的
1. 首先zoj是ac的 这个最简单 就是死的
2. 第二条,凡是xzojx的都可以ac 其中x可以是N个'o' 或者为空;
这个要注意的是前后都是x 所以符合这一条的ac字符串,前后的o的个数一定得相同
如果不同的话,比如oozojo就不符合这一条
其实这一条包含了第一条,也就是o的个数为0的情况就是单纯的zoj了
3. 这个在第二条基础上扩展
azbjc是前提 如果把2中的看成一个集合,同时符合3的也看成一个集合,那么azbjc必须是2或3中的一个元素。
在此基础上azbojac也是ac的
azbjc=>azbojac
做的改变 azb不变加一个o,j不变,加一个a,结尾c不变
而abc同样只能由o组成
这样综合起来,可以ac的有几个特点
首先必须包含zoj三个字符,三个都得有 缺一不可。而起z j 两种有且只能有一次
其次如果要符合第二条,那么zj中间有且只有一个o z前和j后的o的个数相同
第三,如果要符合第三条,这个比较麻烦一些,可以找一下规律
符合第二条的中间zj中间有且只有一个o 那么计算zj之间o的个数oi_in_zj-1就是做过2->3扩展的次数(每次增加一个o),j后面是增加过oi_in_zj-1次数a之后得到的, 所以应该有o_after_j=(oi_in_zj - 1) * o_before_z + o_before_z(这里加上了一个,因为最原始的会是一个azoja形式)
即o_after_j=oi_in_zj * o_before_z (o_before_z>=0, oi_in_zj >0)
这个应该就是最终的公式了 符合这一条的都AC 其他的WA
我的理解(不知道对不对,我也没做过)
三条是依次来的
1. 首先zoj是ac的 这个最简单 就是死的
2. 第二条,凡是xzojx的都可以ac 其中x可以是N个'o' 或者为空;
这个要注意的是前后都是x 所以符合这一条的ac字符串,前后的o的个数一定得相同
如果不同的话,比如oozojo就不符合这一条
其实这一条包含了第一条,也就是o的个数为0的情况就是单纯的zoj了
3. 这个在第二条基础上扩展
azbjc是前提 如果把2中的看成一个集合,同时符合3的也看成一个集合,那么azbjc必须是2或3中的一个元素。
在此基础上azbojac也是ac的
azbjc=>azbojac
做的改变 azb不变加一个o,j不变,加一个a,结尾c不变
而abc同样只能由o组成
这样综合起来,可以ac的有几个特点
首先必须包含zoj三个字符,三个都得有 缺一不可。而起z j 两种有且只能有一次
其次如果要符合第二条,那么zj中间有且只有一个o z前和j后的o的个数相同
第三,如果要符合第三条,这个比较麻烦一些,可以找一下规律
符合第二条的中间zj中间有且只有一个o 那么计算zj之间o的个数oi_in_zj-1就是做过2->3扩展的次数(每次增加一个o),j后面是增加过oi_in_zj-1次数a之后得到的, 所以应该有o_after_j=(oi_in_zj - 1) * o_before_z + o_before_z(这里加上了一个,因为最原始的会是一个azoja形式)
即o_after_j=oi_in_zj * o_before_z (o_before_z>=0, oi_in_zj >0)
这个应该就是最终的公式了 符合这一条的都AC 其他的WA
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询