• CSP2021 游记


    Day 1

    早上 9:00 起床,早上最后看了几个模板以及以前写的常用错误,一直挺紧张的,听了几首歌后感觉好了很多,但后果就是下午考试想不出来题的时候脑内就开始自动循环这些歌。。。

    来到考场后得知上午CSP-J考了4道模拟题,顿时有点慌。

    14:30 开考,密码不知道是什么东西,先看了一遍题,感觉 T1 是模拟,T2 是经典DP套路,T3是神仙结论题,T4也是神仙题。

    冷静看了一下 T1,发现之前读的题面有问题,画了几个图之后,发现如果一架飞机在有 (i) 座廊桥时找到了位置,那么它在 (>i) 座廊桥也能找到位置并且位置不会有变化。因此只需要假设有无限座廊桥,此时第 (i) 架飞机如果停在第 (j) 座廊桥,那么只要廊桥数 (ge j) 它就能找到位置。很快实现了一个做法,对拍了一下感觉没问题。

    继续看 T2,题目描述非常长,我错误的以为就是在一个合法括号序列上每个空位都可以加不超过 (k) 个 *,于是直接写了一个从左到右扫一遍的 DP 发现过不了样例2,手画了一下发现对于 ((A()B)) 的情况, (A、B) 不能同时都填 *,加了这个限制后需要使用区间 DP ,写出来的代码讨论较多,有一大堆细节错误,还好我通过与一个搜索算法对比,很快就找到了错误,写完调完已经是 15:30 了。

    此时再看 T3,以为是一个神仙构造题。发现可以枚举最后取出的的 (n) 个数组成的区间,确定这 (n) 个数后,前 (n) 个数可以通过枚举第一个取出的元素时头还是尾,然后贪心的能选左边就选左边完成。但这样做依然是 (mathcal O(n^2)) 的。接下来我卡在这里很长时间,用了一大堆分类讨论才优化到 (mathcal O(n)) 。写代码的时候又写的非常混乱,写完过拍已经是 17:00 了,而且仍然非常虚。

    T4 一眼感觉是轮廓线 DP,但复杂度太高。很快又感觉很像最小割模型,但发现自己不会在网络流的图上保证某一个点必须与 (s、t) 中的一个联通。(是的没错,就是这个连两条边就能解决的问题)然后就以为最小割不可做????又想了想 (k=2) 的做法,感觉相当于在图上连一条路径将两个钦定点隔开,但我又不太会处理这个东西。(一个最短路就解决的问题)最后只能写了一个轮廓线 DP 企图通过 (nle 18) 的点,加了许多剪枝但依然跑得很慢。。。然而时间已经走到了 18:30。

    Day 1.5

    出考场发现人均 (360+),所有人都会 T4 的最小割,大呼一句我是憨憨。然后 T3 原来根本不需要枚举后 (n) 个数的区间,只需要枚举一个分界点就行了???最终估分 100+100+100+10,洛谷民间数据 T4 拿了 25 分,但听说数据极水,前 3 题依然很虚。

    Day 3

    loj 强力数据卡掉了我的T3做法。

    总结

    本次考试还是暴露出了很多问题。对网络流,平面图转对偶图等知识掌握得非常不好。同时 T3 在发现后 (n) 个选出的数满足重要性质时就满脑子想着枚举这 (n) 个数的区间,钻了牛角尖,却没想过只用枚举一个分界点。并且在 T3 花了很长时间只写了一个不确定正确性的算法后,我在想 T4 的过程中一直非常焦急,很多算法没有仔细思考就否定了,算是本次考试犯的非常重大的失误,下次务必要改正。

    未来规划

    距离 NOIP 还有一个月的时间,作为高二oier,这无疑是非常关键的一场比赛。接下来的一个月时间我应当继续查漏补缺,多练一些题目,多做总结,弥补自己现在的各种缺陷。

    CSP2021 题解

  • 相关阅读:
    函数高阶(函数,改变函数this指向,高阶函数,闭包,递归)
    案例:新增数组方法
    案例:商品查询
    案例:forEach和some区别
    ES5新增方法(数组,字符串,对象)
    案例:借用父构造函数继承属性和方法
    构造函数 和 原型
    汽车小常识别让六大汽车驾驶软肋阻碍你
    Opencv 图像增强和亮度调整<6>
    C# StringBulider用法<1>
  • 原文地址:https://www.cnblogs.com/tqxboomzero/p/15331765.html
Copyright © 2020-2023  润新知