JSOI2025 游记

news/2025/3/13 19:41:29/文章来源:https://www.cnblogs.com/zhaohaikun/p/18770784

省流:两天 \(100+100+8\),小丑干净了)

怎么我还没有进过省队(

自从 CTS 之后,仿佛是运气用光了,毫无征兆地开始皮肤过敏。中间一度脸上肿得睁不开眼,在常州开的氯雷他定还有强烈的胃痛副作用,真是痛不欲生。去了一趟南京的医院才有所好转,不过后来身上又开始了……简直像是被诅咒了一样。

从小学开始就没有过这样严重的皮肤过敏了,我还是原来的那个我啊!

好不容易在大概省选 2 周前,才有了足够的精神状态开始打模拟赛,总体算是恢复了一些水平。最后两场模拟赛尝试全真模拟!使用学校的电脑,但用到后面已经是编译一个题半分钟,打字都卡的状态,被迫换成自己电脑,并都没写完一些分数。成功在最后两场模拟赛中,打出了最真实的水平。

Day 1

自从皮肤过敏开始,每天都保持着 10:30 睡觉的良好作息,但 Day1 前晚上就始终辗转反侧,难以入眠。好不容易睡着了,还在 3:30 就醒了,此后一直迷迷糊糊、半梦半醒的。

开场先把 3 个题都看了下,发现 T1、T2 应该都挺简单的,T3 应该较为困难。

大概半小时的时候,就把 T1 过了,不过感觉没有什么有价值的暴力,就没对拍。

由于做过 P11369,之后对着 T2 编了个类似的做法,大概是定期重构+分块,复杂度是 \(O(\frac{nm}{w}+n^{\frac{5}{3}})\),感觉很可以过就写了下。写完发现有点慢,仔细卡了卡常。发现手写 bitset 还会慢 eps,这是因为 \(O(\frac{nm}{w})\) 部分跑得相当快,完全不是瓶颈,而 bitset 的查询则在瓶颈上,这部分手写的 bitset 反而略慢一些。而先求出每个点的 deg,接着 vector resize,再插入,竟然是有用的!有可能是因为这样空间会更小一点,遍历的时候就会更快一点。除此之外,除了调了调块长就没有什么其他的卡常方式了,此时在 nfls 的机子上,最后一个大样例跑 6.8s,而且最后一个大样例的 \(m\) 不是满的,不过测了下发现 \(m\) 对我的影响比较小,先当自己过了,此时大概已经过去了 2.5h。

还剩 2h 做 T3,开始一直在分析,在纸上画了画各种情况,但一直都没有想法,再一次注意到时间的时候竟然已经只剩 1h 了!我赶紧先尝试写了个 \(O(n^2)\) 发现完全不对,然后去做树,发现也假光了,最后一直和指数暴力对拍去修树的情况,但全假光了。

期望得分:\(100+100+8=208\)

出场 gqh 说他 T3 也是 \(8\) 分,心里好受一点,也许 T3 真是不可做题?

后来 qzx 说他 T3 \(72\) 分,说树是纯送???后来又听说 lyx, tyx, zyf, xjc, lxy, wfh, djx T3 都拿到了很高的分数。

小丑干净了,这下省队都危险了。

不过之后分析了一下,发现比队线还是高了不少的,但是距离 A 队差挺多,qzx, lxy, lyx, xjc 都比我高了不少。

不过凯文说他 100+20+8 是什么锤子???不过凯文说他 100+20+8 是什么锤子???不过凯文说他 100+20+8 是什么锤子???

Day 2

Day1 爆炸了之后,由于 A 队无望,反而 Day2 没那么紧张了。Day2 前挺快就睡着了,早上 5 点半才醒,不过感觉头脑挺清醒。

开场还是先把 3 个题都看了下,发现 T1 应该是简单题,T2 应该是能做出来的题,T3 没什么头绪,大概难以得到很多分数。

T1 按照 \(a_i\)\(b_i\) 大小关系分了下段,然后线段树维护了下 \(a_i-i\),是一个区间覆盖,线段树二分的形式,半个小时的时候通过了。

T2 感觉非常复杂,分析了一下,发现按照边权从小到大加边比较容易维护,而对于一些连通块通过该层的边连到一起,则是一个类似 \(w_i=1\) 的形式。开始我的状态是 \(dp_{S}\) 表示连通块集合为 \(S\) 它们没有入度,且内部强连通的概率,但后来发现由于只考虑入点是合法点的边,所以 \(S\) 集合内连通块的合法点集合是重要的,于是又加了一维变成 \(dp_{S_1,S_2}\),表示连通块集合为 \(S_1\) 它们没有入度,它们的合法点集合为 \(S_2\) 且内部强连通的概率。而 \(S_2\) 是一个大小为 \(S_1\) 连通块大小和的集合。我需要使用 vector 定义状态,不过状态总数分析了一下是对的。而转移则还需要处理 \(S_2\) 的下标偏移,暴力遍历求出还是 \(O(n)\) 的。开始先把暴力遍历的写了出来,写了好久好久,差不多写了 2h 才写出来,中间上了好几次厕所,并且吸取昨天的教训,不停地看时间确保别在梦游。

开始调完一下基本的错误后,去测大样例,发现 C 性质的全过了。然后发现,这两组数组竟然输出结果不一样。

0 1
3 2
1 2 1
2 3 1
0 1
3 2
1 2 1
2 3 2

后来又分析了下,发现对于一般情况,我还漏算了一些系数,仔细修了修就不 WA 了。不过发现满的 C 性质,我代码跑得比较慢,分析了下发现计算 \(S_2\) 的下标偏移是瓶颈,把暴力扫一遍,改成了个很恶心的递推,终于才跑进了时限内。此时还剩下 50 分钟左右。

T3 先把暴搜打了,但此时的精神状态肯定已经难以支持我思考更多的分了,想了一下 \(n\le 18\),也没有什么收获。检查了一下 3 题的代码,发现 T3 的 unordered_set <__int128> CE了,自定义了个哈希就没问题了。

最后誊抄代码长度时,才发现原来我 T2 总共算上注释写了 13.7kb。

期望得分:\(100+100+8=208\)

出场之后发现 T2 就只有我和凯文过了???\(208\) 是 JS 标准分了。好像其他人考得比较一般,有可能有 A 了。

Day ?

Day2T2 的代码去掉注释也还有 7.9kb。发现 Day2T2,由于过程中需要有解,所以对于每个连通块,一定有合法点,所以记录 \(S_2\) 就可以确定 \(S_1\) 了!

唐完了,感觉这样可以好些非常多,但这是怎么能想到的?)

Day 6

中午出分了,\(100+100+8+100+100+8=416\)

qzx 两天反向挂了 \(16+16\) 分,也再次拉高了 Day1 的标准分,变得更加恐怖了。

xzh Day1T2 的 \(\sum n-ans\) 过了 \(88\),甚至开大数组就 \(100\) 分了。但由于 qzx 拉高了 Day1 标准分,所以 djx 翻了 xzh。

下午问到了 irris 的得分,他 Day1T2 如愿以偿地得到了 \(88\) 分,又翻了 djx,成为了 JS 长队。这样 djx 就变成队线外 1 名了,只能期待奇迹了。

zxx, pmd 怎么这么牛啊,继 NOI 之后再次被击败了!真是后生可畏啊!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/898331.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

github 2FA 双因素验证

- 参考连接:https://www.cnblogs.com/johnnyzen/p/17880870.html 我采用浏览器插件 在谷歌商店搜索: Authenticator: 2FA Clien 2、选择添加到扩展程序3,点击这个插件,记得使用免费的 切换到github的双重验证二维码界面 点击抓取二维码 然后就会出来验证码,输入即可-

GESP-Lv8总结(202406)

GESP C++ 八级 2024 年 06 月 题目链接 错题 ( T4 ) 有V个顶点、E条边的图的深度优先搜索遍历时间复杂度为 \(\color{red}{错误的:O(V})\) \(\color{green}正确的:O(V+E)\) 求时间复杂度,我们就需要先搞清楚源代码是什么?以下为 DFS 模板 void dfs(int now, int fa) {for(int…

城市林业的无声革命:人工智能与古老生态学如何重新设计城市

城市林业的无声革命:人工智能与古老生态学如何重新设计城市 在摩天大楼的阴影下,一场静悄悄的变革正在发生——它融合了硅芯片与古老根系,算法与原住民智慧。 作者:保罗桑杜作者利用 PicLumen 创建的图像城市森林不再只是城市规划中的装饰性附带元素。它们已成为活生生的实…

Andriod连接

1.创建项目:2.配置: AndroidManifest.xml添加语句点击查看代码<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />android:usesCleartextTraffic…

虚拟试衣间

虚拟试衣间 一、团队介绍 1.1 团队概况 1.1.1 博客展示链接 团队名,组长博客链接https://www.cnblogs.com/c-eng/p/18763232 1.1.2 团队项目描述 虚拟试衣间 1.1.3 队员风采 姓名:曾成鑫 风格:Excellent Nimble Talented Perfect 擅长的技术:Python 编程的兴趣:c++ 希望的…

AI Agent替代化成风,企业HR SaaS如何选?| 盘点2025国内HR SaaS厂商Top10

自2025年以来,前有DeepSeek搅动国内外AI圈,后又国内外各大厂商纷纷加速AI技术及产品应用落地,紧随而来,在AI Agent成为又一关键热词,Manus携“全球首款通用Agent产品”再次掀起一番躁动。 如此喧嚣热闹的背景之下,向广大人力资源从业者传递一个强烈信号:AI技术的发展正在…

python的基本运用(3)——索引、切片、字符串

一、索引 索引在公司中一般也叫下标,或角标定义:可我们可以直接使用索引来访问序列中的元素,同时索引可分为正向索引和负向索引两种,而切片也会用到索引,如下图:Python中有序列:字符,列表,元组无序:集合正向索引:从0开始负向索引:-1开始二、切片 定义:切片是指对操…

[算法学习记录] 并查集(附例题)

并查集简介 并查集是一种重要的数据结构,主要用于实现节点之间的合并查询操作(例如判断两个节点是否属于同一个连通块(共享同一个父节点的节点组成的集合叫连通块)),在解决不相交集合时有很大的用处;并查集同样常用于处理无向图,来描述接点的连通性,在初始化时,每个节…

Electron 进程间通信(IPC)方法详解

Electron 是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架,它是基于 Chromium 和 Node.js 构建的,而 Chromium 本身是采用多进程架构的,所以 Electron 也是多进程的。 Electron 是一个多进程框架,它的进程主要分为两类:主进程(Main Process) 和 渲染进程(R…

从零开始的web前端学习-JavaScript

JavaScript 是一种运行在客户端(浏览器)的编程语言,实现人机互动效果:网页特效(监听用户的某些行为并令网页进行反馈) 表单验证(针对表单数据的合法性进行判断) 数据交互(获取后台数据并渲染到前端)JavaScript 组成ECMAScript:基础语法核心 Web APIs:DOM(页面文档…

【Azure Service Bus】分享使用 Python Service Bus SDK 输出SDK内操作日志

问题描述 使用Python代码消费Service Bus中的消息,默认情况 Console 中的信息都是通过 print 打印输出。 有时候需要调查更多SDK中的日志,那么如何才能让SDK输出更多的日志呢?问题解答 方法就是引入 Logging SDK,然后再初始化 ServiceBusClient 对象时,设置logging_enabl…