NOIP冲刺做题记录

为有牺牲多壮志,敢教日月换新天!

二十天,或许为时已晚,但至少无悔。

\(\texttt{11.9 Day -20}\)

\(\texttt{11.11 Day -18}\)

  • P1250 种树
    贪心
    非常典的贪心,把区间要种的树尽可能延后,满足无后效性。

  • P7949 [✗✓OI R1] 左方之地
    线性基+格雷码
    利用线性基构造所有的数,再利用格雷码构造出只有一个基差的相邻数。

  • P9695 [GDCPC2023] Traveling in Cells
    大分块,细节较多。

  • [ARC173D] Bracket Walk
    负环+性质
    利用循环括号链零环的性质,由于线性方程的性质,转化为判定正负环的存在性。

  • [ABC348E] Minimize Sum of Distances
    非常典的换根DP,预处理子树权值和,换根时计算每次移动的贡献差

  • P1993 小 K 的农场
    差分约束板题

  • P8346 「Wdoi-6」最澄澈的空与海
    二分图+图论性质分讨
    注意到满足题意的二分图一定存在度数为一的点,进而暴力匹配求解。

  • P10357 [PA2024] Żelki
    分组背包+同余最短路
    由于要求每组颜色都要选,并且同时预处理选两组一定不会更优,考虑分组背包预处理不同余数下的最小代价,然后跑同余最短路。

  • [ARC175D] LIS on Tree 2
    贪心人类智慧+拆点贡献+构造
    考虑一个点的权值强制做为 LIS 的一部分的贡献,于是可以计算出我们需要哪些点做贡献,最后根据题意构造即可。

  • P8366 [LNOI2022] 题
    暴力大DP
    暴力记录所有没有拼完的数分别有多少,写一个七维 DP 即可。
    ,注意剪枝。

\(\texttt{11.12 Day -17}\)

今天有点摆,可能是因为没有具体的计划表,因此稍花了点时间整理了一下要做的题。
顺便确定了 NOIP 的目标,我想了一下,按 2022NOIP 的难度来算,我只需要能写出绿到蓝的题再骗骗分就有 200+ 了。因此接下来的训练重心转移到绿蓝题,具体的说,把专题题单和综合题题单中的绿蓝题全写了,预计要两到三天。比赛补题仍挂在任务列表,应抓紧落实。

  • P4223 期望逆序对
    单独计算贡献+DP+矩阵加速+分讨
    新trick,考虑原排列的每一对数对答案产生的贡献,分类讨论出该数对随机交换后不同相对位置的方案数及贡献。情况数较多,值得仔细研究。

  • [ARC176D] Swap Permutation
    单独计算贡献+DP+矩阵加速+分讨
    与上题类似,贡献的值有所不同,但仍是同样随机交换的套路。

  • P10254 口吃
    转化+DP+前缀和优化
    难点在于如何将 \(ia_i\) 和逆序对扯上关系,针对 \(a_i\) 与其他数的大小关系进行转换,然后 DP+前缀和优化 即可。

\(\texttt{11.13 Day -16}\)

经过计划的调整,写题节奏回到了正常的水平。可惜晚上要运动会开幕式,晚上没有时间写题了。总的来说,上午的效率比下午的效率高很多,可以促进。按照目前的速度,完成任务还要 \(3\) 天。比赛补题仍挂在任务列表,应抓紧落实。

  • P3957 [NOIP2017 普及组] 跳房子
    二分+DP+单调队列优化
    注意到代价越高,越有可能取得更高的分数,因此满足单调性,可以二分。问题转化为经典的单调队列优化DP。
  • [ABC280F] Pay or Receive
    图论性质
    发现一条边的反边权值为相反数。题目要求不能有负环,等价与图中只能有零环。于是要么连通块不合法,要么两点距离恒相等。dfs判定即可。
  • P8320 『JROI-4』Sunset
    二分+交互
    发现最大值覆盖之后所有信息,二分枚举最大值。
  • P9127 [USACO23FEB] Equal Sum Subarrays G
    排序+改变计算答案的方式
    与其考虑一个数能更新哪些区间,不如考虑一对区间能更新哪些数。排序后将相邻的区间暴力更新答案。不相邻的区间一定不会更优。
  • P8207 [THUPC2022 初赛] 最小公倍树
    最小生成树+数学
    发现具有更多公因子的边更优,枚举因子建图,跑kruskal
  • P8251 [NOI Online 2022 提高组] 丹钓战
    倍增+单调栈
    这题我想偏了,考虑一个数被挤出去的条件,倍增加速即可。
  • Permutation
    DP+前缀和优化
    新trick!由于只考虑数之间的大小关系,dp时每填一个就把大于k的数+1,避免重复计数。
  • [ABC282G] Similar Permutation
    DP+前缀和优化
    与上题类似,只不过同时考虑两个排列,状态设计与上题套路类似。
  • P3138 [USACO16FEB] Load Balancing S
    前缀和+枚举+离散化
    离散化后照题意模拟即可。
  • P2680 [NOIP2015 提高组] 运输计划
    二分+树上差分
    关键在于让最长的路径最短,考虑二分,去除最长公共边后是否能满足条件。
  • P1650 田忌赛马
    贪心
    奇怪的性质,考虑让田忌的马能赢就赢,不能赢就平局,其次判负。具体实现上有许多值得讨论的细节,有空可以回来看看。
  • P9305 「DTOI-5」校门外的枯树
    二分+预处理
    将边权和按DFS序预计算,对每个子树二分求解即可
  • P2254 [NOI2005] 瑰丽华尔兹
    DP+单调队列优化
    关键在于不能以时间为阶段,而是以时间段为阶段。于是单调队列优化DP即可。

\(\texttt{11.14 Day -15}\)

摆上天了!!可能是因为前一天没睡好,但总之效率几乎为零。做好状态的调整,尽快恢复正常的刷题节奏。距离完成任务还要 \(3\) 天(工作日)。比赛补题仍挂在任务列表,应抓紧落实。

  • P6175 无向图的最小环问题
    Floyd
    每次尝试把点加入集合,考虑经过该点产生的环。
  • P5304 [GXOI/GZOI2019] 旅行者
    最短路+二进制分组
    人类智慧,每次跑Dij可以求出两个集合之间的最短路,于是考虑把点按二进制分组,最短的最短路的两个端点二进制下一定至少有一位不同。
  • P1441 砝码称重
    状压+搜索+DP
    暴力枚举所有物品组合分别DP即可。
  • P2656 采蘑菇
    强连通分量+DP/最长路
    每个SCC中的都可以经过任意次多次,而连接SCC间的边最多经过一次。缩点跑DAG上DP或把图建出来跑最长路。特别注意,dij不能跑最长路,只能用SPFA或Bellman-Ford。

\(\texttt{11.15 Day -14}\)

上午效率较高,下午效率不佳,晚上打了一场阳间 CF ,被第三题卡了半天。效率不佳可能与中午睡糊涂了有关,应尽量压缩或调整中午睡眠时间。时间不多了,必须要抓紧时间,距离完成任务还要 \(2.5\) 天(工作日)。考虑到应试能力不佳,有必要单独花时间训练。比赛补题仍挂在任务列表,应抓紧落实,暂定于下一星期。

抓紧时间!!!

  • P9017 [USACO23JAN] Lights Off G
    状压DP+贡献提前计算
    异或满足交换律,可以提前计算初始状态以及修改对序列的影响,预处理初始状态及修改在不同次数下的贡献,状压DP即可
  • P5664 [CSP-S2019] Emiya 家今天的饭
    容斥+DP
    注意到题目要求不能超过一半,考虑容斥计算超过一半的所有方案。由于超过一半的列至多有一个,分别钦定超过一半的列进行DP即可。
  • P5017 [NOIP2018 普及组] 摆渡车
    DP+剪枝+斜率优化
    从最暴力的DP开始优化,剪去无用的转移。值得注意的是,在同一复杂度下,设计的DP为1D1D与2D0D的优化难度不同。通常来说,前者可优化到 \(O(nlogn)\) 级别。
  • P2467 [SDOI2010] 地精部落
    DP+处理排列
    Permutation套路类似,只关心相邻数之间的大小关系,dp时每填一个就把大于k的数 \(+1\) 即可。
  • P6647 [CCC2019] Tourism
    DP+剪枝+数据结构优化
    很怪的题,题目的条件非常严格,进一步的条件对于每一天都应满足,因此原有暴力 \(O(n^2)\) 的DP有很多无用状态,剪去无用状态后只有 \(O(n)\) 量级。考虑对剪枝后的状态重新设计转移,发现原序列被分为若干段分别转移,因此分段后缀max可以做到 \(O(n)\)
  • P3205 [HNOI2010] 合唱队
    区间DP
    对左右情况进行讨论,区间DP即可。
  • P1155 [NOIP2008 提高组] 双栈排序
    图论建模+二分图+模拟
    有意思的题,先通过判定能否一个栈内的条件,考虑分成两个序列分别满足条件,在矛盾的数间连一条边,进而转化为二分图判定。按字典序分类后,模拟处理两个栈的处理即可。
  • P3573 [POI2014] RAJ-Rally
    归纳法(递推)+分类讨论
    考虑按 \(topo\) 序依次讨论删点的情况,从删点i的情况推到删点 \(i+1\) 的情况。于是对于每个点为起点/终点的最长路分讨,用数据结构维护最大值即可。值得再次回顾。
  • P3403 跳楼机
    背包DP+同余最短路
    从完全背包出发,发现在 \(i\) 成立时 \(i+x\) 也成立,因此绝大多数 \(dp_i\) 以 x 为循环节。考虑计算最小的 \(i\) 使 \(dp_i\) 成立且 \(dp_{i-1}\) 不成立,于是在 mod x 意义下跑同余最短路求解。
  • P2371 [国家集训队] 墨墨的等式
    背包DP+同余最短路
    上题的加强版,套路类似。
  • P7771 【模板】欧拉路径
    欧拉路径+dfs+当前弧优化

\(\texttt{11.16 Day -13}\)

周末放假,休息+比赛,效率略低。下午打了洛谷的月赛以及ABC。下午的比赛一直在聊天,发挥不是很好。ABC搜素写挂,喜提rk 1k 。比赛补题仍挂在任务列表,应抓紧落实,暂定于下一星期。抓紧时间啊!

\(\texttt{11.17 Day -12}\)

周天打了两场比赛,早上T1想错了怒挂40pts,下午状态不佳。任务列表剩下约35题,尽量在两天之内完成。

\(\texttt{11.18 Day -11}\)

总体来说,今天的效率还行。但仍可以提高,分心及刷QQ的时间较多。白天的效率基本达到预期,晚自习效率和智商双双掉线,明天要尽力改善。任务列表剩下约idk题,明天必须全部完成。接下来将进入比赛模拟+补题为主的训练。抓紧时间!

\(\texttt{11.19 Day -10}\)

今天是任务计划的最后一天,任务列表仍未完成,明早补齐。接下来应进行过去比赛的补题,预期速度在一天三到四场。今天效率早上时最佳,下午逐渐下滑,晚自习效率依旧不高,抓紧时间改进。

  • P5851 [USACO19DEC] Greedy Pie Eaters P
    区间DP
    考虑一个奶牛只吃一个派不会影响答案,于是考虑合并区间的时候中间夹一个没用的派取最大价值区间。
  • P7914 [CSP-S 2021] 括号序列
    分讨+区间DP
    分类讨论区间内串的状态,尝试合并时避免*的合并,分讨DP即可。
  • 巴比伦塔 The Tower of Babylon
    DP
    长方体之间产生了偏序关系,并且不存在环,于是相当于在DAG上DP。
  • P7706 「Wdsr-2.7」文文的摄影布置
    线段树
    考虑维护区间答案并合并,进一步考虑合并答案需要的其他信息,分类讨论区间贡献答案的方式及所需信息,按方程及顺序更新。
  • P2827 [NOIP2016 提高组] 蚯蚓
    关键在于把优先队列优化为有序队列,注意到切出来的蚯蚓分别单调不减,开三个队列维护。
  • P5677 [GZOI2017] 配对统计
    树状数组
    理解错题意了啊啊啊啊,把题目要求的配对求出来,问题变为区间查区间内区间数量,发现二维偏序不好维护,离线询问,排序解决一维偏序,另一维靠树状数组。
  • P1070 [NOIP2009 普及组] 道路游戏
    DP+前缀和
    方程不难列出,把收益数组复制一份断环为链,收益用对角前缀和。
  • P5022 [NOIP2018 提高组] 旅行
    枚举
    没看到m=n/n-1擦擦擦,树的情况直接按编号优先级dfs遍历,基环树考虑断环枚举即可。
  • P2279 [HNOI2003] 消防局的设立
    贪心
    一个点没被覆盖,在他父亲的父亲那放点一定不劣,于是枚举没被覆盖且深度最大的点处理。技巧:标记时可以把祖先标上“势”,因为兄弟间覆盖一定经过祖先,于是判定是否覆盖和标记只需要查询祖先。
  • P6190 [NOI Online #1 入门组] 魔法
    矩乘优化+最短路
    因为有负权边,考虑跑 Bellman-Fold ,使用广义矩乘 \(G\) :每乘一次相当于用一条边来松弛,最短路最多n-1条边, \(G^{n-1}\) 相当于跑了一次BF,原路径一定是 最短路-负边-最短路-负边... ,考虑把 \(G\) 取反 \(K\) 因为只能用 k 次,即计算 \(G^{n-1}(G^{n-1}K)^k\)
  • P8865 [NOIP2022] 种花
    前缀和
  • P3177 [HAOI2015] 树上染色
    树形DP+背包
    考虑一条边能被覆盖多少次,问题转化为背包合并时内外各颜色不同数量之积。

\(\texttt{11.20 Day -9}\)

呃。休息了一天,把周末 GXCPC 要带的板子整理了一下。从明天开始进入补题。
怎么还不发钩子!这都鸽了三天了/fn

  • P5021 [NOIP2018 提高组] 赛道修建
    二分+贪心
    二分最短链长度,dfs时贪心的将各子树的链拼到一起,用mutiset维护。
  • P7073 [CSP-J2020] 表达式
    性质/倍增+模拟
    没想到分析性质,考虑倍增。计算当 \(x\) 节点变为 0/1 时他的 \(2^k\) 级祖先如何变化。倍增到根即可。

\(\texttt{11.21 Day -8}\)

早上补了一场比赛的题,速度和效率有点低。下午正式进入GXCPC备战,好吧,就是组队打了一场CF。晚上被叫去打水赛,几乎什么也没干。进度远远未达到预期,抓紧时间!

\(\texttt{11.22~23 Day -7~-6}\)

\(GXCPC\) 启动!

详见 TZYLT's GXCPC 游记

\(\texttt{11.24 Day -5}\)

早上打了mx的模拟赛,第一题比第二题还难,最后第一题挂了50分,总共让wj爆了35.9金币。下午lg的信心赛,题确实简单,上来两个小时不到切了T1T2。晚上去找 \(\texttt{Jeslan}\) 聊天,摆烂了。

\(\texttt{11.25 Day -4}\)

摆烂。当时忘记写了,现在记不得了qwq

\(\texttt{11.26 Day -3}\)

早上打了两场模拟赛,xyd的难度简直是NOIplus,mx的还好(我太菜了555)。下午分析了一下一等分数线,接着写了一点题。晚上的时候终于发钩子了,蓝钩到账!

\(\texttt{11.27 Day -2}\)

早上完整的打了一场云斗的模拟赛,难度和2023年的相当(个人认为)。最后拿了 100+90+50+15=265 ,第二题数据较水(也许是没卡到我错的地方),我判断区间左右打反了几乎过了所有的数据。当然,NOIP时应该避免此类事情发生。
下午以及晚上写了历年来的打卡题,总体来说状态良好。

\(\texttt{11.28 Day -1}\)

最后一天了,今天下午准备回家。希望 NOIP 前一天晚上能睡个好觉。简单复习了一下各类板子,感觉良好,考虑到 NOIP 可能会出 ad-hoc ,简单看了一下这类的题目。下午回家摆烂,玩了一下午手机,晚上开 NOILinux 简单试了一下环境,学了些 bash 的用法。现在我也会用脚本和调试器了。明天就出发了,睡个好觉,Good Night.

  • 我不想记也没题可记了。

\(\texttt{11.29 Day 0}\)

该出发了,故事结束了。


完工于 \(\texttt{2024.11.29}\)

\(\texttt{TZYLT}\)

\(感谢你读到这里\)

posted @ 2024-12-01 17:39  TZYLT  阅读(110)  评论(0)    收藏  举报