zoukankan      html  css  js  c++  java
  • 九省联考 2018 Day 1 复现

    前言

    今年省选还有 15 天。每天针对性刷题学知识点有点枯燥,想到真题还没刷,就对着 pdf 做了一遍。

    A. 一双木棋

    去年省选得了 25,应该是 (n=2,m=2) 的贪心和 (m=1) 的递推。

    差不多暑假的时候把 DP 做法弄出来了。

    然后 WC2019 试机题的传统题是这道题。当时写+调一共 1h20min 1A 了。

    这会想半天写不出来……一直在想 dp 怎么转移。

    实际上轮廓线是状态啊!就是 dp 数组的下标作为状态,然后针对这个转移,这才是 dp 的本质。

    此外,我好像只在这个题里见过“最优策略”,就是指会使后面状态尽可能对自己优。所以应该从后往前转移,也就是从前往后记忆化搜索。

    码量 1kb 左右。

    今年最简单的题 HB 能有多少人 A 掉呢

    —— 匿名用户《如何评价NOI2018九省联合省选?》

    B. IIIDX

    写了个贪心吧,还是比较好想的。先排个序,然后构造出这棵多叉树

    分配给下标最小的子树的数一定最大。而为了保证这个最大,它们一定是连续的最大值。即如果子树大小为 (sz),那么分配给它 (a_{n-sz+1}sim a_n) 会使这个根上的数最优。

    由此可以推出根上的数是子树中最小的。然后递归贪心就可以了。(说不定能根据推论搞出正解

    C. 秘密袭击

    前 15 分傻瓜 (O(ncdot 2^n)) 枚举。

    链的情况 (O(n^2log n)​) 主席树搞定。

    但是注意是要求出第 (k) 大不是小,不然样例都过不了。

    主席树找左儿子的时候会减去一个值,如果是表达式的话要注意打括号(带减法的)。

    总结

    数据分治一定要检查每个 namespace 的正确性,一个错误考虑会不会在多个 namespace 里同时出现。检查完之后不要把分治时的 if 注释删了。

    如果发现一直没有思路,就先 return; 吧。

    对问题要考虑本质而不是表象。尤其是状态。

    5 分也是分。

    多组数据一定要清空(虽然这套没有)。

    多读题多读题。

  • 相关阅读:
    shell脚本:Kill掉MySQL中所有sleep的client线程
    为什么事务要提交或者回滚?
    MySQL 性能优化
    解决:Reading table information for completion of table and column names
    mysql distinct 用法详解及优化
    MySQL Profiling 的使用
    手把手教你用Strace诊断问题[转]
    mysql,命令导入导出表结构或数据
    八种架构设计模式及其优缺点概述(下)
    mysql多实例配置下,用脚本启动mysql时,出现Please read "Security" section of the manual to find out how to run mysqld as root!
  • 原文地址:https://www.cnblogs.com/wjyyy/p/sx2018.html
Copyright © 2011-2022 走看看