【CSP-S2019模拟】11.01比赛模拟

日均挂50分

比赛思路

传送门

  • T1(森林):如果是加的话就倒着变成删。排序后贪心就好了。
  • T2(玩具):理解题意之后发现并不是很好做,先做了T3。推了一波DP,发现中间的标号会算重,又加了一维,原本n3的就变成n4了。
  • T3(飘雪圣城):求边数。刚开始以为是可持久化线段树。打的时候发现直接用树状数组就可以维护了,然后就又短又水了。

赛后消化

  • T1因为会加入一些房子,数组要开大两倍。。。还好只萎了20分Orz。
  • T2为了追求速度少模了几发,以为可以的,但是没有发现其实是会炸的,70变成50了。。。
  • 改出来暴力之后发现,外校的有的同学原来做过这套题,看了看他们发的题解,不知道题解的DP讲的什么东西,但是抄上去就过了。如下:
    在这里插入图片描述
  • 我考场上在计算标号的时候,因为组合数的原因,我以为是让开头的标号从小到大的。但是这样子的话就不知道下一个起始标号要在哪里开始,所以干脆记录一下有多少个起始标号,如果有xx个的话,最后会算x!x!,除以它就好了。
  • 然而实际上,我直接让开头的标号从大到小每一次开头就是第一个,组合数就从C(i,j)C(i,j)变成C(i1,j1)C(i-1,j-1)就好了。这样居然就可以了???
  • 其实这种钦定的方法,之前是见过的。但是我脑子短路了,这都没有想到Orz…

总结

  • 要减少失误啊。
  • 数组不要越界,数组不要越界,数组不要越界。
  • 模多一点还是吼的。
原文地址:https://www.cnblogs.com/DeepThinking/p/13090925.html