codeforces #316

来源:互联网 发布:跳跃网络总部 编辑:程序博客网 时间:2024/05/22 07:40
codeforces #316
今天虚拟了一场.以下是做题感受
第一题挺简单的,就是1 1这个情况没有考虑到.
第二题,我分情况讨论:
    分为m在中点的左右.
    如果m在中点的左边,那么右边的m+1就是答案.此时m+1始终能比m多一个
    m在中点的右边.那么左边的m-1就是答案,同样m-1始终比m多一个
    如果m正好在中点上.则除了m是1外答案是1,其他都是m-1
第三题.简单的模拟,先将初始情况的数量求解出来,其实就是相邻的cnt的对数
然后根据替换.分情况讨论:
    1)如果当前该位上是'.'.替换仍然是'.'直接输出答案
    
    2)'.'和字母,则字母影响的是前面一个和后面一个.判断一下即可如果是','
    表示现在被字母掐断了答案分别-1.
    
    3)字母和'.'.同样'.'影响的是前一个和后一个.判断,答案是否分别+1
    
    4)字母和字母.直接输出.

第四题:给你一个树.问以v为根的深度为dep的子树能否构成回文串.
    这题我没有想出来.看了看黄名爷的代码,实在理解不了.只能先放着了

第五题:从0,0走到n-1,m-1.能组成回文串的方法数.
    这题同样依然没想出来.同样看了看黄名爷的代码,是道dp.但是dp理解的话
    要有状态.模糊的看了看.感觉是双向的dp.即x0,y0到x1,y1的方法数.还要
    分奇偶讨论,并不是很明白.也只能先放着啦.哎,不说什么了.继续加油吧

前三题的代码我就不贴了.关于第四和第五.如果有神犇愿意稍稍指点小子一二
小子不胜感激

0 0