NOIP 2023
NOIP2023训练赛1
- 组合计数对于数的东西要明确。计数时不要搞混了。
NOIP2023训练赛2
- 猜结论很重要。有必要时观察、手玩样例。尤其是 CF 的推性质题,时常根据样例能看出关键结论来。
NOIP2023训练赛3
- 注意值域数组,判断是否能够与节点数组一样使用
N定义数组。 - 离散化后,格外注意不在离散化数组里的值,根据需求离散化。
NOIP2023训练赛4
__lg(0)是 UB,避免使用。
NOIP2023训练赛5
- 没有返回值得函数一定写
void,否则 \(\color{#a0a}\text{RE 0}\)。使用编译指令-Wall避免
NOIP2023训练赛6
-
思维缜密很重要,不要漏情况。分讨要完整。
-
关键结论、性质,多次思考,甚至可以先对拍检验正确性,再写完整代码。
NOIP2023训练赛7
- 格外注意存储不同内容的数组大小的区别。举例:点、边、询问次数、值,需要根据题目开大小不同的数组。
NOIP2023训练赛8
- 注意题目要求求最大值还是最小值,同时对于相近的概念,找到其区别,并将其明确在脑中,甚至将性质写在纸上,不因此做法混乱。对于最大值、最小值做法完全不同的题(例如 mex)尤其重要。
NOIP2023训练赛9
- 状压注意下标。枚举的二进制数下标从 \(0\) 开始,枚举的数组下标要与之对应。
NOIP2023模拟赛10
- 确定高精度模板,写熟高精度模板。写高精度应该做到比写线段树模板更容易。
NOIP2023模拟赛11
- 合理估算运算次数,合理进行常数优化。
NOIP2023模拟赛12
- 题解思路理清楚了再写代码。
NOIP2023模拟赛13
- 推式子题化到足够简单再使用数据结构维护,以减小常数,使代码更容易实现。
NOIP2023模拟赛17
- 排序注意多关键字的影响。
- 认真判断代码难度再写,不放弃写能力范围内的代码,也不冲无法写完+调完的代码。
- 小常数 \(O(n^2)\) 很有前途,尝试根据时间限制,冲万级左右的数据。
NOIP2023模拟赛18
- 题目没有保证不存在的(重边、自环、数据有序),均按没有处理。
- 注意
ull自然溢出。除法前注意判断,必要时使用__int128。
NOIP2023模拟赛20
- 树上问题,需要将答案记录在爷爷或爸爸上时,格外注意没有爸爸或爷爷的情况。
- T1 也要对拍。
NOIP2023模拟赛23
- 对 \(n,m\) 这样题目给定的量,若使用了
n--,m--,一定注意改变后不再使用。
NOIP2023模拟赛25
- 使用
printf和scanf时,类型一定要写正确。避免错漏,使用cincout。 - 傻逼
A-Star没有前途。合理估算做法的常数、效率再写,判断能否有优化效果,不要因没有优化的做法浪费时间,错失想其他做法的时间。
NOIP2023模拟赛26
-
不拘泥与一种形式。看到一道能用见过方法做的题,保持冷静。根据时间限制、数据范围,判断做法的实用性。可能原来的算法具有普适性,但常数较劣,这时应根据题目的性质,思考更优秀的解法。
-
写长代码前一定要三思。毕竟面对的是 Legendary OI 赛制。
NOIP2023模拟赛28
-
T1 要对拍。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。不要犯傻逼错误。
-
对算法效率的感觉要加强。估算效率时,乘上操作的次数。
NOIP2023模拟赛30
pii是两个int类型,注意鉴别。最短路注意长度的范围,priority_queue的pair的first的类型要格外注意。- 估算代码的难度。同时式子要先推导化简再考虑维护。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。不要冲大 DS 冲傻了。
NOIP2023模拟赛31
- 养成良好的代码书写习惯。如对 DP 转移无用的状态直接
continue优化常数。个人毫不吝啬地认为自己在这方面完成的不错。使用复杂度不正确的算法获得更多的分数。
NOIP2023模拟赛32
-
Kruskal 重构树点为原来的两倍,格外注意。类似的还有圆方树,也是两倍。养成测极限数据的好习惯。
-
有时应该敢于保留有一定正确性,但过不了样例的代码。
-
在时间足够的情况下,尝试对暴力代码进行常数优化,有可能获得更多的分数。
NOIP2023模拟赛34
-
估算答案或过程量范围要认真,不要盲目认为它无法存下,或轻松存下。
-
当认为一个过程量大到一定范围时无用,与 \(lim\) 取 \(\min\) 时,要注意取 \(\min\) 后是否存在除法、减法操作干扰,无法正常比较该过程量和其他数的大小。
NOIP2023模拟赛36
- 维护 \(1\sim x\) 的前缀和求满足 \(\le lim\) 的数的个数时要注意 \(lim\) 大于 \(x\) 的情况,这时要查询
cnt[min(x,lim)]。
NOIP2023模拟赛37
- 对于自己的证明不要盲目相信。尽量使用正确性为真的做法。
NOIP2023模拟赛39
- 估算复杂度要仔细。例如 200 * 1000000 != 20000000
- DP 的阶段和顺序很重要。
NOIP2023模拟赛40
- 构造题想清楚实现很重要。不同于算法模板可以现场轻松默写,构造需几乎全部现场编写。
NOIP2023模拟赛41
- 不要卡题!!!当花费时间足够长且仍然没有明确思路能够获得较高分时,果断放弃,静下心来拼部分分,即使不满足、不满意。
NOIP2023模拟赛42
-
好好地估算时间复杂度。必要时测试极限数据。
__int128long long乘除很慢。 -
代码想清楚实现。如果通过先写暴力再加优化,则暴力一定要好好写,式子、形式、做法尽可能简单,利于优化的代码实现。
NOIP2023模拟赛 50
屑。
流程记录
8:09 切 T1。
读 T2 题意,没什么感觉。
看 T3。先写了 T3。首先写二维差分 + 单次 \(\mathcal O(n\log n)\) 暴力查询。
8:50 没有精细实现 T3 大致有 \(30\) 分。
继续做 T3。前半部分求解 \(<k\) 的数个数是容易的,很快想到。
中间想错做法(一个奇怪的做法),立马开写,因为注意到空间问题停下,并意识到做法错误。此时基本只写了正确的前半部分,不算太浪费。
10:00 我仍然不会查询。试图分类讨论。
因觉得自己的讨论过于垃圾,选择暂时放弃。
10:21 看完 T4,并思考。
指数级暴力不好(xiang)写。看特殊性质。
只会链的做法,中间没有意识到大样例中没有链的特殊性质,拿外向树的大样例测,耽误了一些。
10:58 只写了链的 \(5\) 分还有 \(q=0\) 送的 \(5\) 分,总共 \(10\) 分(纯属浪费时间),回到 T3。
仍然什么都不会。
11:32 写了 T2 随机的部分分(\(10\) 分)。
11:43 拼上了 T3 实现略好的 \(40\) 分。
最后得分:\(100 + 10 + 40 + 10=160\)。
总结
考试策略很差。时间很紧张。
需要调整、端正态度。
不要过于渴望切掉某一道题并因此不够冷静,错误频出。
还是那句话:关键结论、性质,思考多遍、尝试证明或举反例。
关于比赛将大部分时间投到一道题上:不好评价,有时浪费时间,有时又比瞎拼部分分好(也许好是因为最终冲出来,直接获得 \(100\) 分?)。
T3 因为数学问题耽误了很久。感觉整场比赛败笔就在这了,冲 T3 失败了,分数和排名自然就烂了。
说到底硬冲某题就是赌徒。如果求稳还是不要同一题花太多时间(?)。
在这里尝试限定投入一道题的时间:比赛剩余时间 / 未过题数(?)。至于顺序:读完题后,按照感觉排序,感觉越好越前。

浙公网安备 33010602011771号