【比赛游记】2024 ICPC 昆明站游记

news/2024/12/2 1:36:04/文章来源:https://www.cnblogs.com/cjtcalc/p/18580777

2024.11.6

FZU 申请到了 2024 ICPC 昆明站的一个额外名额,并分给了我和另外两位同学。感谢傅老师!感谢实验室的各位伙伴们!

Day -1

坐飞机飞往云南,云层之上的晚霞很美。

晚上九点多,和队友 vp 了一把 2024 北京市赛(这是我们队的第一次训练 ...),由于比较晚了我们打算只打两小时。

开场先看了 H,很傻很天真地以为深度不减就合法,交上去一发 WA 了。玩了一个样例,发现并不简单,至少没有我想的这么简单,遂搁置。

和队友一起看 K,一个很明显的贪心思路就是,每次选最小的数 \(\times 2\),直接模拟显然会超时。很快注意到,若 \(\max{a_i} \leq 2\min{a_i}\)​,则操作顺序有很明显的循环节。告诉队友这个事情并交给他们写,他们非常稳的实现了这个做法。

接下来双开 D, H。D 也有一个很明显的贪心,不过不好支持修改。H 想了一会,想了一个虚树的做法,不过看起来很难实现,遂搁置。继续看 D,发现 \(i\) 是否对答案有贡献只取决于 \(b_i\) 是否在 \(b_{i - 1}, b_{i + 1}\) 构成的路径上,上机简单写了一下就过了。

很快两小时就到了,除了 H 一发没罚,挺好的。

Day 0

十点到达 YNU,太美丽了 YNU!绿化做的很好很好。

在签名墙上留下了我们队的队名 fall for a town

签到后就打算在校园内四处逛逛,看到其他选手骑着电动车畅游 YNU,我们也打算骑着电动车爽爽。费了好大功夫才成功解锁一辆电动车。人生中第一次骑电动车,没想到一上手就知道怎么骑了,EZ。

YNU 超绝上下坡啊,闭上眼哥们还以为自己在秋名山,骑车的时候满脑子都是 " 86 上山了 "。继续骑车逛了很多地方。

十二点半的时候去了食堂吃饭,歇到一点半就出发去场馆了。

下午两点半的热身赛,拖延到了两点四十五分开始。

上海站的时候几乎全程坐在主机位,感到压力山大。于是这次我把自己换到了三号位上冷静。

A 就是 A+B problem。B 一看就知道要优先处理 \(w\) 较小的,不过暂时没想到什么好的实现方式。与此同时得知队友 B 做过原题,就让他来上机写。

在 00:25:03 的时候顺利过掉 B。队友接着来看 C,得知队友 C 也做过原题,就让我上机体验了一下交互题,在 00:38:02 的时候顺利过掉 C。

接下来看 D,一眼不会,我行列式的知识储备还是很浅的。先让队友推了一下 \(n = 3\) 的链,得知答案是 \(a_1(a_2 - a_1)(a_3 - a_2)\)。然后将这个式子带到样例 \(2\) 发现不太对,说明 \(p_i\) 确实是对答案有影响的。尝试把这个式子的某个地方改掉,将 \(a_i - a_{i - 1}\) 改成 \(a_i - a_{p_i}\) 试试?发现样例 \(2\) 对了。于是告诉队友这个式子并让他们写写试试,发现成功的过掉了样例 \(3\)! 00:57:40 交上去也是稳稳过掉。

后面一小时玩了玩机子,对 Linux 稍微有点熟悉了。想随便打印些东西,留下我们热身赛的痕迹,于是就打印了 xie xie zhi yuan zhe! thank you, volunteer!,志愿者哥哥有点绷不住了:" 你们队的代码很有风格 "。

热身赛一发没罚,排在金尾两名,挺好的。事实证明把我放在三号位上冷静是很好的选择,前面的题可以无脑相信队友。

热身赛后一个半小时被华为讲座硬控,哥们又来做了一回抽奖分母。

晚上和两位朋友一起出去吃了火锅,This is true food!吃完火锅后,骑电动车回到了酒店,骑行的感觉很不错。

回到酒店后洗了个澡,把 2024 北京市赛 H 改了一下,再把上海站 E 改了一下。然后打了 \(2\) 把 LOL,被 \(4\times 2=8\) 头猪给气死了 ...

Day 1

九点半开场,开始先开了 G,有了一点初步的思路。七分钟的时候有队伍过掉了 M,后面陆陆续续也有队伍过了 M,于是回过头来看 M。

M 是个构造,手玩了一些样例,暂时没得出什么普适的构造。回忆起之前关于构造题的种种不悦,和队友说明了一下我弱构造的情况,于是我们交换了一下题目,队友来开 M,我去开 J。

J 延续了队友 " 只有 Alice 先手,并且一步可以升序排序的情况下,才是 Alice 胜 " 的思路,这个结论也是蛮感性的,尝试证明了一下发现很对。并且敏锐地察觉到了 \(n = 3\) 的 corner case,上机写了一发直接过,此时 00:58:43。

M 队友通过打表并且观察得出了一个普适的构造,并且通过了他自己写的 check,交了一发也是直接过,非常好!此时 01:12:52。

在此期间,发现 H 是一眼题,不过我们队可能对 atan2 并不算很熟悉,稍微磨蹭了一会,但是非常稳地通过了,非常好!此时 01:58:12。

接下来,发现 C, G 都可以开。C 初步地想了一个根号分治的做法,不过 \(k > \sqrt{n}\) 的情况还没想清楚。G 结合开场的想法有一个很暴力的搜索,很想上机找一下有没有特殊的规律(事实上应该是要上去玩一下的,因为我们队此时没有对机时的需求)。

此时看榜,发现 L 的通过数逐渐反超 C, G,并且 dirt 率很低,说明 L 的思路是慢慢想可以想出来的。看了一眼 L,发现好像确实如此,于是我们队的重心就放到了 L 上。初步的思路肯定是让小的 \(a\) 与小的 \(b\) 配对,但很快就意识到爆炸可能会使得前面较小的 \(a\) 直接失去操作机会。大脑宕机了一段时间,突然想到可以将引爆操作放到最后,每个 \(a\) 都选择不会被当前爆炸杀死的最小的 \(b\) 即可,唉还是炉石玩少了。写了一下,03:31:56 交了一发 WA 了,有点不知所措。

整个队伍在此时有点凝滞了,我非常纠结到底是保一个 L 还是继续开 C, G 然后把 L 交给我的队友。最后我还是选择性地盯了几下 L,发现基本不是代码的锅,那就是思路的锅。不过整个贪心策略我已经证明过了正确性,看起来是一些细节没有判断好。

突然有一个时刻,队友提示我,会不会要先让 \(a_i\) 减去 \(1\) 再进行 upd()。好像确实是这样。改了之后交上去还是 WA,有点束手无策了。再过了几分钟,突然意识到要先让全体的 \(a_i\) 都减去 \(1\)。再试了两发,终于过了!此时 04:30:01 罚了五发。

接下来在 C, G 中纠结,我认为 C 短时间没有很好的思路,并且就算有思路也不一定能在半小时之内实现。于是叫队友一起主攻 G,上机打了个表,发现 \(a, b \leq 5000\) 的情况答案最大只有 \(14\),意识到答案可能非常小。想着要不尝试写一个迭代加深的搜索吧,意识到自己并不会估计答案的范围(当时脑子有点坏了,直接选一个能承受范围内的最大值应该就可以了)。接下来的时间也都没有很好的想法,慢慢看着倒计时归零。


最终又拿到了铜奖。前期我们开题其实是很顺的,又遇到不顺的情况都通过团队配合解决掉了(在这里要特别夸一下我们队的策略,非常正确!)。可惜到了中期,特别是在 L 上花的时间太久了,在正常情况下花费的时间不能超过一小时的题却硬控了我这么久,如果可以省下一点时间再去想想 C, G,说不定一切会不一样。对不起我的队友们 ... 不过 L 我们在最后的情况下也没有放弃治疗,依然在积极地寻找问题,到封榜最后半小时终于成功 AC。

我们做到了!一切都是值得的。我和我的队友们都尽力了,凭自己奋斗换来的牌子,就算是铜牌我也认了。人总是会进步的,一步一个脚印,心里很踏实。

在场馆内呆到了滚榜结束,见证 " 哥哥来了 " 成功登顶!并且成功地要到了哥哥签名!不虚此行。

这个赛季也算是结束了,线下赛的体验真的很美妙,不过可能要回归文化课一段时间了,把高数与线代的基本功打扎实了,争取把英语学好。除此之外真要好好地练一练二分图网络流、计算几何了,希望可以成为一个六边形战士,期待明年更好的自己。

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

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

相关文章

装机软件汇总

装机软件汇总 一些个人用的软件 编程相关JetBrainCrackLinkVSCodeGitRedis Insight:Redis官方可视化连接Navicat Premium 15:数据库可视化Wireshark:抓包Sandboxie-Plus:沙箱VMware:虚拟机SSH终端MobaXtermTermius效率UTools:Alt + Space = anythingSnipaste:截图天若OC…

基于Jenkins构建微服务项目发布失败回滚

基于 Jenkins 构建微服务项目发布失败回滚 1 微服务项目发布失败回滚1.1 安装插件 Active Choices(动态生成选项) 1.2 编写获取 harbor 仓库镜像列表的脚本 [root@k8s-master1 ms_jenkins]# cat get_tags.sh#!/bin/bash​# Harbor的用户名USER="admin"# Harbor的密码…

三维模型文件格式解读

最近接触到三维模型文件,发现格式五花八门的,这里做一个汇总和解读。最近接触到三维模型文件,发现格式五花八门的,这里做一个汇总和解读。 STL 简介 STL,全称为STereoLithography,译作:立体光刻,由3D System软件公司创立。但因三角网格形式的其特点,又可以翻译为“标准…

开源 - Ideal库 - Excel帮助类,TableHelper实现(三)

讲解对象集合与DataTable相互转换,包括表格转对象集合需校验类型、列名对应,及解决结构体赋值问题;对象集合转表格、一维数组转表格、行列转置的方法及示例代码,测试源码已上传。书接上回,我们今天继续讲解实现对象集合与DataTable的相互转换。01、把表格转换为对象集合 该…

信息安全概论复习3

保密与安全文档保密密级术语密码体制 单钥密码体制(对称密码体制)加密方式双钥密码体制(非对称密码体制)(公钥体制)特点

优化企业博客内容:策略与ai工具的应用

在数字化营销日益重要的今天,企业博客不仅是品牌传播的重要渠道,也是吸引潜在客户、建立品牌权威性的关键工具。然而,要让企业博客真正发挥作用,关键在于内容的优化。本文将探讨优化企业博客内容的策略,并详细介绍如何利用HelpLook平台来实施这些策略,以提升博客的吸引力…

攻防世界-Decrypt-the-Message

一、题目 收到一首英文诗歌和一段密文,要求很简单,就是解密这个密文二、解题 1、背景知识PoemCode参考文章:https://blog.csdn.net/xiao__1bai/article/details/1202504522、解密 了解加密原理即可,解密过程很复杂,可以直接用现成的脚本脚本地址:https://github.com/abpoly…

请问PbootCMS 登录失败及表单提交校验失败的解决方案

在使用 PbootCMS 时,可能会遇到登录失败、表单提交校验失败等问题。以下是针对这些常见问题的详细解决方案。 一、登录失败或表单提交校验失败 描述:用户尝试登录时失败。 表单提交时校验失败。解决方案:检查服务器环境:确保服务器环境满足 PbootCMS 的最低要求。 检查 PHP 版…

# 学期(2024-2025-1) 学号(20241420) 《计算机基础与程序设计》第10周学习总结

学期(2024-2025-1) 学号(20241420) 《计算机基础与程序设计》第10周学习总结 作业信息这个作业属于哪个课程 <班级的链接>(2024-2025-1-计算机基础与程序设计)这个作业要求在哪里 <作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)这个作业的目…

关于用户反馈到产品需求的思考

1 前言 在数字产品的世界中,用户反馈不仅是检验产品成功与否的试金石,更是推动产品迭代与创新的关键驱动力。作为项目负责人,我们深知每一个反馈背后蕴含的用户需求与期望。最近刚好看到了@玉伯大佬写的文章从用户反馈到产品需求的思考,深受启发,结合这一年半的工作经验,…

2024年11月文章一览

2024年11月编程人总共更新了21篇文章: 1.2024年10月文章一览 2.《使用Gin框架构建分布式应用》阅读笔记:p307-p392 3.《使用Gin框架构建分布式应用》阅读笔记:p393-p437 4.《使用Gin框架构建分布式应用》读后感 5.《Django 5 By Example》阅读笔记:p1-p16 6.《Django 5 By …

请问帝国CMS动态页面生成静态页面失败怎么办

检查生成设置:进入后台的“系统设置” -> “生成设置”,检查静态页面生成设置是否正确。 确保生成模式选择正确,例如“只生成首页”、“生成所有页面”等。检查模板文件:确保模板文件中没有语法错误,特别是PHP代码部分。 检查模板文件路径是否正确。检查文件权限:确保…