NOIP2025游记

· · 生活·游记

本游记含有大量废话,请注意。

2025/11/1

为什么上午 J 组这么简单,下午 S 这么难啊 qaq

CCF 考试难度是守恒的吗。

考试 4 个题都没做出来是不是可以重开了 qaq

浪费了一个下午,本来可以爽玩游戏的 qaq

什么叫我四个题暴力拿了 163 分?

2025/11/14

什么叫我拿一等了?

什么叫我要去打 NOIP 了?

2025/11/29

早上

6:30 被叫起来,买了些小笼包。

小笼包真好吃,吃了两袋😋

上高速去深圳,高速上太阳直接对着我们车,快把我眼睛晃瞎了。

还带了点书过去,想要在车上再复习一波(虽然睡觉去了)。

想要在车上睡一会,结果根本没睡着就上考场了 qaq

考场

先看 T1。

T1

T1 的价格是有规律的,也就是说,如果把糖果数量看成价值,每一种糖果都可以看成有无数个价值为 2,费用为 x_i+y_i 的物品(下文记为 1 类物品)和一个价值为 1,费用为 x_i 的物品(下文记为 2 类物品)。可以做背包 dp 啦~好简单。

1 \leq m \leq 10^{18}

不对。

先尝试写个假贪心:将自己的钱只买一种 1 物品,再将剩下的 2 类物品按照费用从小到大排序,接着从小到大一次购买。

candy1.in 过了!

candy2.in 过了!!

candy3.in 过了!!!

candy4.in 过了!!!!

candy5.in 过了!!!!!

candy6.in 没过。

注意到 candy6.in 代表的数据点不满足特殊性质 B,于是考虑一下特殊性质 B 为什么可以让我的假贪心过。

我们发现,如果 x_i < y_i,那么就有可能可以少买一些 1 类物品来多买一些 2 类物品。

于是我们考虑写反悔贪心!

没写出来。(我怎么这么糖。)

(深思)如何骗分。

我们的假贪心是可以骗到特殊性质 A 和 B 的分的,而背包 dp 是可以骗到不少分的。

🤓☝️我们让它们杂交不就行了!

杂交之后的程序会保留双方的优良性质,具体的:

这样一定可以拿到不少的分数!1~16 都能过!剩下的点只能听天由命了。

考场代码(记忆复现版):

#include <bits/stdc++.h>
using ll = long long;
const int N = 1e5 + 5;
ll x[N], y[N], cc[N], dp[10000005];
int main() {
    int n;
    ll m;
    scanf("%d%lld", &n, &m);
    for (int i = 0; i < n; ++i) scanf("%lld%lld", x + i, y + i), cc[i] = x[i] + y[i];
    if (n * m <= 1e7) {
        for (int i = 0; i < n; ++i) for (int j = cc[i]; j <= m; ++j) dp[j] = std::max(dp[j], dp[j - cc[i]] + 2);
        for (int i = 0; i < n; ++i) for (int j = m; j >= x[i]; --j) dp[j] = std::max(dp[j], dp[j - x[i]] + 1);
        printf("%lld", dp[m]);
        return 0;
    }
    ll minn = LLONG_MAX;
    for (int i = 0; i < n; ++i) minn = std::min(minn, cc[i]);
    ll ans = m / minn * 2;
    m %= minn, std::sort(x, x + n);
    for (int i = 0; i < n && m >= x[i]; ++i) m -= x[i], ++ans;
    printf("%lld", ans);
}

洛谷上实测 80 pts。

看看 T2 吧。

T2

坏了计数题,不会做,转战 T3。

T3

不会做(最后甚至连暴力都没写出来,直接输出样例输出了)。

T4

不会做,随便写个前缀和优化一下吧。顺便骗一下 R_i\leq32 的分。

其他

考场上拉肚子了,好辣。

考场外

时间到了后我就跟着别人走了,感觉自己可以准备重开了。

感觉阳光撒到身上挺暖和的。

出考场后就在学校的食堂吃了饭。

有土豆+鸡肉,青菜和牛腩(本人不知道烹饪方法)。土豆好吃,狂炫😋

吃了点东西就下去了。路上还买了个双皮奶,好吃😋双皮奶还加了点芒果,不知名的透明小弹球/正方体。

然后就坐车回家了。车上已严肃完成今日睡眠两小时大学习,精力++。

睡醒后小腿抽筋一分钟,疼痛++。

游记完。

后记

第一次写游记,感觉写了好多废话...

换了个小号发游记,因为大号太逆天了。

感觉这次参加 NOIP 的过程充满着一种凑数感:

在写这个游记的时候,我突然尝试追忆往事。

我什么时候开始玩电脑的?

回首往事,我在小时候跟着爸爸一起去他的办公室,爸爸让我玩他的电脑。

我那时根本没听说过 OI 这种东西,全是自己上网在看好看的东西。

小学微机课上,我有时还会用上网学来的 VBS 恶搞同学(比如开一个关不掉的窗口,或是直接关机)。

后来有了第二课堂,我在第二课堂上搞了 Scratch,编程猫,某个动画平台。有时也会在微机课上看 Underverse。

我想,这个时候的我,绝对猜不到现在的我会变成这样吧(笑)。

到了初一,我妈妈给我介绍了一个叫做洛谷的平台,我注册了一个账号后就让它吃灰去了。但是这个平台将会陪伴我的 OI 生涯。

还上了个兴趣班,我在那里学到了很多基础知识。但是由于兴趣班与我家距离过远,我每个周日都要在家、兴趣班、学校中奔波,后来也没怎么上了。

到了初一,我第一次尝试打 CSP,竟然过了 J 和 S 的初赛,但是到了复赛才发现自己竟然什么都不会做,去哪里吹了 8 个小时空调。

初二,我没有打 S,转而去攻打 J 组,当年的题特别简单,前三题我都 A 了。

结果我们考场代码弄丢了,于是参加了一次重赛,题目特别难(感觉 T1 有黄,难度单调递增),于是喜提 245。算是个有趣的小插曲。

::::info[一段突兀的升华] 我在这里写游记时,突然问自己:如果你知道你自己现在这样,你当初还会选择 OI 吗?

作为一个初三学生,我感觉我在 OIer 中算是中下层:没有天分,没有毅力,也没有让我能够全身心投入的热爱。

没有希望就没有失望,我在 OI 的路上遇到了很多令我失望的事情:不理想的分数,学不会的东西,whk 的冲突。

OI 搞了两年,没拿到什么分数,时间倒是真的浪费了。

由于主播体育就是残废,我的 whk 成绩在我所在的初中没有特别靠前,也上不了当地的顶顶流高中。

但是我搞 OI 并不是为了成绩的,我在小时候玩电脑时,我就喜欢在电脑面前坐着,探索新鲜事物。我想,从我小时候玩电脑开始,我就注定会走上 OI 的道路了。

我在 OI 中学到了很多知识,结交了很多人,~还认识了一个叫做 florr 的游戏~,虽然我也干过一些很中二很傻逼的事,但我觉得我的收获大于失去。 ::::

在游记中突然高潮了,插入了一段很突兀的升华,还请见谅。

最后以追忆的题目背景结尾: ::::info[追忆]

我常常追忆过去。

生命瞬间定格在脑海。我将背后的时间裁剪、折叠、蜷曲,揉捻成天上朵朵白云。

云朵之间亦有分别:积云厚重,而卷云飘渺。生命里震撼的场景掠过我的思绪便一生无法忘怀,而更为普通平常的记忆在时间的冲刷下只留下些许残骸。追忆宛如入梦,太过清楚则无法愉悦自己的幻想,过分模糊却又坠入虚无。只有薄雾间的山水,面纱下的女子,那恰到好处的朦胧,才能满足我对美的苛求。

追忆总在不经意间将我裹进泛黄的纸页里。分别又重聚的朋友,推倒又重建的街道,种种线索协助着我从一个具体的时刻出发沿时间的河逆流而上。曾经的日子无法重来,我只不过是一个过客。但我仍然渴望在每一次追忆之旅中留下闲暇时间,在一个场景前驻足,在岁月的朦胧里瞭望过去的自己,感受尽可能多的甜蜜。美好的时光曾流过我的身体,我便心满意足。

过去已经凝固,我带着回忆向前,只是时常疏于保管,回忆也在改变着各自的形态。这给我的追忆旅程带来些许挑战。

我该在哪里停留?我问我自己。 :::: 哦,还有:

小笼包好吃😋

土豆好吃😋

双皮奶好吃😋

Minecraft 豪腕😋

竟然写了 4000 字!破纪录!(唯一超过的是一片题解,但是代码占了很多字,删去代码后 2000 字不到)。