zoukankan      html  css  js  c++  java
  • CSP 2019 游记

    写在前面

    老年选手再次来到神大观光旅游。

    考前特地花了一天颓废打板子,手感还行,但思维似乎跟不上了。感觉不太妙。

    11.16 (Day 1)

    打开题面,发现是用 tuack 造的,简直好评。

    看 T1,发现是傻逼题,于是随便写了个递归就扔了。

    看 T2,读完题后会了 (O(n log n)) 的线段树做法,但感觉 1s 跑 (n leq 5 imes 10^5) 的数据有点悬,便又思考了一会儿。推出了一些性质后发现可以 (O(n)) 做,于是很快码完后直接过了所有样例,觉得很稳。

    看 T3,读完题后有了一些奇异的构造性想法,码完之后发现已经写了近 3KB,结果一测样例发现做法有 bug。通过不断的调试与改进,最终我在 11:20 左右时得出结论:我的做法是假的。此时十分自闭。还剩最后二十分钟时,无奈只好打了暴搜。不过我之前的做法能处理链,于是我将其保留了下来。

    于是估分 100+100+35=235,感觉结果不如去年好。

    结果出考场发现 T3 得分普遍不高,心理稍微平衡了一些。

    晚上在床上突然感觉我的做法似乎也能处理菊花图的数据,于是估分变成了 260,但希望不要挂掉。

    11.17 (Day 2)

    还没发密码时,点开三个题的样例文件夹,发现每个题都是四五个样例,感觉情况不对劲。

    打开题面,发现 T1 就是计数,模数还是 (998244353)。感觉情况更加不对劲。

    看完 T1,发现可以容斥,之后再做一个 (O(n^3m)) 的 dp 就有 84 分了。又想了一下,发现 dp 状态的其中两维可以做差合并成一维,复杂度就可以降到 (O(n^2m))。很快码完后一遍过了所有样例,觉得很稳。

    看 T2,读完题后只会 (O(n^3)) 的暴力 dp,一看分数只有 36 分,感觉情况相当不对劲。又仔细想了一会儿,推出了一些奇奇怪怪的性质,然后把 dp 的有用状态压了一下,发现可以跑 (n leq 5000) 的数据。觉得 64 分稍微算说得过去,但对这道题仍耿耿于怀,于是准备先看 T3。

    看完 T3,发现 75 分简直白给,于是花了半个小时左右码完部分分后测过了所有的样例。之后,又回过头去看 T2。

    结果 T2 始终没有什么好的想法。

    期间回头检查 T1 时造了组大数据,发现我被卡常了,用 Linux 一测发现极限数据跑了 1.02s,并且还相当稳定,吓得我赶快去了趟厕所然后回来卡常,在加入一些神奇的特判后,终于卡进了 0.9s。

    于是估分 100+64+75=239。这样下来,不挂分的话两天的总分就应该是 499。希望最终会是这个结果。

    12.1

    炸穿。

    Day1T3 居然只有 10 分,Day2T2 也挂了 4 分,于是总分只有 445 449(Day2T2 数据出锅了差点害了我)。

    果然老了。

    后记

    这点分在全省竟然还能 rank 12 8,感觉怪怪的。

    遗憾二三事:

    • Day1T3 挺可惜的,因为我的做法几乎就是正解。
    • Day2T2 考场上推出的性质已经证明了决策单调性,不过却并没有往那个方向想。
    • Day2T3 不难,应该先开它的(虽然有点马后炮的感觉)。
  • 相关阅读:
    fullCalendar改造计划之带农历节气节假日的万年历(转)
    Linked List Cycle
    Remove Nth Node From End of List
    Binary Tree Inorder Traversal
    Unique Binary Search Trees
    Binary Tree Level Order Traversal
    Binary Tree Level Order Traversal II
    Plus One
    Remove Duplicates from Sorted List
    Merge Two Sorted Lists
  • 原文地址:https://www.cnblogs.com/ImagineC/p/11877762.html
Copyright © 2011-2022 走看看