HL祭记汇

一.写在前面

如果说廿四10天集训,对于我,是完成了从入门(虽然可能我比别人入门更早?)到准OIer的蜕变,那么,HL7天,可以说是真正成为了OIer,虽然是被小学生、初中生(南方的)薄纱的那种高中OIer……

二.目录

Day 1:周赛一

Day 2:基础数据结构

Day 3:树状数组和线段树

Day 4:倍增问题

Day 5:字符串

Day 6:根号问题+杂选

Day 7:周赛二

好好好,都是我最弱的……

三.知识

我在我的日祭中写道,会在最后的总结中对知识进行汇总,我来兑现我的诺言了。

Day -1:

报道,学术无论

Day0:粥赛I

本以为T1是个签到题,结果数据造的四舍五入是真的很坑,好好好,就我没AC

T2:简单约数题,结合map还有Div性质很快AC了(数论还真好玩)

T3:10min看出是倒着贪心,跟正解想的一样,将最后结果入B,直到break;(AC_Love):

T4:暴搜20+pts,如果开O2-30+pts,沉默了一会是状压dp?但是怎么调都是73pts(能有20times?)后来搜状压dp的板子(原谅我)发现其实区间dp更符合题目要求,毕竟区间max才58,然后对答案进行修剪80pts+1个RE,数组再大10,90pts,最后一个O2,过了

T5:想歪了,以为是dij缩点+贪心,后来明白dp更好,但是就很唐,dij怎么缩点来着?结果TLE了(这里指的是比赛进程)后来订正,懂了:

T6: 没时间了,要不然10pts的平凡dp分是可以拿到了,其实本题有思路,后来实测30pts,可能是不够优,答案思路写完就过了,这是好的:

Day1:寄储数据结构

对,存储我寄的结构

个人认为STL 一直是我最烂的部分(与之相反的是数论)

是我不爱背板子吗?

好像不是,毕竟文化课我都挺过来了。

但是又感觉STL跟背没关系。

如果背为主,信息怎为理科?

但是总是要面对的啊!

我要承认困难,我要客服困难!

当天的题就不写了,主要写写新知识——笛卡尔树(实在没想到一个理论数学家又和OI有关系了@欧拉先生)

首先要明确笛卡尔树是二叉树!如果这点忘的话很可能构树时会RE(别问我怎么知道的)

定义(stO OIWiki):

笛卡尔树是一种二叉树,每一个结点由一个键值二元组 (k,w) 构成。要求 k 满足二叉搜索树的性质,而 w 满足堆的性质。一个有趣的事实是,如果笛卡尔树的 k,w 键值确定,且 k 互不相同,w 互不相同,那么这个笛卡尔树的结构是唯一的。

即:

在一棵笛卡尔树中,定义根节点是所有的元素中数值最小的那一个元素。笛卡尔树中每一个节点可以有 0,1,2 个节点。

对于根节点,假设它在原数组中左边不存在任何的一个元素,那么根节点就是没有左儿子的,否则,根节点的左儿子就是它在原数组中左边的所有元素中数值最小的那一个节点;右儿子同理,如果根节点在原数组中左边不存在任何的一个元素,那么根节点就是没有右儿子的,否则,根节点的右儿子就是它在原数组中右边所有的元素中数值最小的那一个点。对于一个非根节点,建立其左右儿子的步骤和对于根节点建立左右儿子的步骤是完全相同的。

性质(部分来源于Google):

  构建

不能比OIWiki写的更明白了!

新建一个大小为 n 的空栈。用 top 来标操作前的栈顶,k 来标记当前栈顶。
For i := 1 to nk := topWhile 栈非空 且 栈顶元素 > 当前元素 k--if 栈非空栈顶元素.右儿子 := 当前元素if k < top当前元素.左儿子 := 上一个被弹出的元素当前元素入栈top := k
for (int i=1;i<=n;i++) 
{int k=top;while(k>0&&h[stk[k]]>h[i]) k--;if(k)rs[stk[k]]=i;  // rs代表笛卡尔树每个节点的右儿子if(k<top) ls[i]=stk[k+1];  // ls代表笛卡尔树每个节点的左儿子stk[k++]=i;top=k;
}

板子传送门:Problem - 1506 (hdu.edu.cn) 

Day2:术状数组和线断树

原谅我的懒惰,但是一看就懂,一懂就会的好资源为什么不用呢:

树状数组 - OI Wiki (oi-wiki.org)

线段树 - OI Wiki (oi-wiki.org)

Day3:被增+LCA

以下为正确理解个人理解:

倍增算法,顾名思义,就是不断地翻倍。

虽然是一种基础算法,但它能够使得线性的处理转化为对数级的处理,大大地优化时间复杂度,在很多算法中都有应用,其中最常见的就是ST表以及LCA(树上最近公共祖先)(在本part中无其他含义)了。

个人在网上找了个例题,感觉易于理解(不戳)!

有一个环状的操场,操场被分割为 [1,n] 个小块,每个小块上写着一个数字。
有一只小白兔站在操场的起点,它每次可以跳 k 个小块,然后拿走等同于它所站小块上数字数量的胡萝卜,问它跳 m次,总共可以拿到几个胡萝卜?
如果能够算出来的话,小白兔就能把所有的胡萝卜都带回家吃啦!

———————————————————————————————————————————

本题吧,暴力当然可以,就是让小白兔一次一次的跳,每次+=,直到m次。

但是,数据max有10^18欸,小白兔不出意外会累死,还吃不到胡萝卜。

所以就是倍增了

只需要记录从1开始2,4,8,16 =》 2^logm就可以了(请原谅我不会用CSDN数学式的编辑

所以,复杂度降低至O(nlogm)

至于dp式嘛:

代码自然不是问题。

Day4:自服串

烂的自己都服。

hash+kmp+manacher(马拉车)+exkmp

本来上午没太听懂挺荒的,但是听到才队也不会,心宽了很多。

hash

字符串哈希 - OI Wiki (oi-wiki.org)

kmp

前缀函数与 KMP 算法 - OI Wiki (oi-wiki.org)

exkmp

Z 函数(扩展 KMP) - OI Wiki (oi-wiki.org)

马拉车

Manacher - OI Wiki (oi-wiki.org)

真的不是我又懒又烂,而是真心感觉OIWiki上讲的很透彻,不能奢望我讲的更好了,因为字符串本来就是我的WApart(回想3个月前gets怎么改卡了两周)

Day5:总结杂项

数列+数论+根号问题

我很舒服,毕竟yn学长的数论真的是一言难尽……在这的数论简单多了,自认为完全掌握,所以不总结

但是晚上你SE几个意思??

Day6:粥赛II

T1:水的要命,5minAC

T2:也挺水的,建个栈然后vector存储,最后按题模拟就行,15min

T3:根本不会,本次周赛的两个唯一,一个唯二:

唯一根本没敢提交的

唯一讲解后也还是不会的

唯二没过的题

其余九位大佬谁能给我讲讲啊……

T4:

有两个子问题,恰好为k,最多为k

对于Q1:

设F[i][j]为到i换j的排列数

所以F[i][j]=F[i-1][j]

但是i到1后就变成了:

F[i][i+j]-=F[i-1][j]

所以:

F[i][j]+=F[i][j-1]

所以:

答案F[n][i]

对于Q2:

记得要%1000000007,否则只能过一个点!!!!

T6:

自己懂了,但是讲不出来,这种感觉真的很崩溃!!本文更新,等到会了会更新!

四.同学

这是本人第一次进入全日制学校进行集训,相信其他十个OIer也一样?

HL优美的校园环境留下了很好印象(除了第一天的午饭和比天的物价)

刘某人评价是211水平,可以

决战HL之巅,有生活广场,马场(这很难评,但是赞一个)

HL真的是很爱篮球,HBA有150+39场比赛,和电荷、潇寞、小陌、Qwehhh233打的很好

宿舍不错

309的同志们都是我想的那样

更是直面了410的大佬们,包括:

才队,湘湘,HB,Kazdale,cx330,james,yingxue-cat等大佬

还有Eric和两位福建的大佬

才队睡我下铺

本来以为他是个很凶的人呢(机房114514那次是真的不知道在玩梗)

结果:

嗯,他也是金梗频出:

吾日三省吾身:能不能拖到明天做?能不能给别人做?能不能不做?

唉,我都已经一周没有见我的npy了

还有很多,但是不知道能不能过审,就不说了

湘湘,真的好温柔,人很帅很高,跟才队一捧一逗

HB,额,感觉不太正经,但是学习时很投入,感谢你教我机惨!HB-Viki-Merlin爆内存法不戳!

Kazdale,才队的父亲和才队的儿子,外表豪放但看头像内心应该很细腻……

记得那晚他给我们讲他零基础OI的故事,直到HLgg来查寝并把viki带走了(恐)

其余的九位队友,一如既往,不必评价,因为你们几乎完美,附,合照(请允许我使用诸位的肖像权):

五.趣事

详见每日更新的HL小祭记:

HL小祭記0216-0218 - MerlinLee 的博客 - 洛谷博客 (luogu.com.cn)

HL小祭記0219 - MerlinLee 的博客 - 洛谷博客 (luogu.com.cn)

HL小祭記0219 - MerlinLee 的博客 - 洛谷博客 (luogu.com.cn)

HL小祭記0222 - MerlinLee 的博客 - 洛谷博客 (luogu.com.cn)

请原谅0223没有写出来,但是会写的,请关注我的csdn和洛谷,本文也会实时更新

六.总结

24集训的诺言达成:

我身在

当时你

幻想的

未来里

还有,很喜欢的一首歌的前语:

劃過偏見與爭端,我們靜默航行。

當諸神背過身,當百鬼夜行狂歡,當人間掀起更甚海洋的巨浪,捧起微弱的理智之光,

我們將航行在耳語「之間」、在極端「之間」、在絕對「之間」;

繁星失語的午夜,也許沒有方向、卻能安適靜待遠方天光。

Merlin·Lee

于大连市中山区

2024年2月24日

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Linux运维-DHCP服务器

DHCP服务器的配置与管理 项目场景 学校各部门共有180台电脑&#xff0c;除了计算机学院的教师会配置电脑的网络连接&#xff0c;其他部门的老师和工作人员均不会&#xff0c;为了提高网络的管理效率&#xff0c;技术人员决定配置一台DHCP服务器&#xff0c;来提供动态的IP地址…

nginx搭建直播rtmp推流,httpflv拉流环境

背景 工作中发现挺多直播CDN在实现httpflv拉流时都没有使用http chunk编码&#xff0c;而是直接使用no-content-length的做法。所以想自己搭建一个直播CDN支持 http chunk编码。 环境搭建 系统环境 Ubuntu 18.04.4 LTS 软件 nginx-1.18.0 nginx扩展模块 nginx-http-flv-mo…

【前端素材】推荐优质后台管理系统Be admin平台模板(附源码)

一、需求分析 后台管理系统&#xff08;或称作管理后台、管理系统、后台管理平台&#xff09;是一种专门用于管理网站、应用程序或系统后台运营的软件系统。它通常由一系列功能模块组成&#xff0c;为管理员提供了管理、监控和控制网站或应用程序的各个方面的工具和界面。以下…

Linux学习方法-框架学习法——Linux驱动架构的演进

配套视频学习链接&#xff1a;https://www.bilibili.com/video/BV1HE411w7by?p4&vd_sourced488bc722b90657aaa06a1e8647eddfc 目录 Linux驱动演进的过程 Linux驱动的原始架构(Linux V2.4) 平台总线架构(platform) Linux设备树 Linux驱动演进的趋势 Linux驱动演进的过程…

这么多向量数据库,它们之间到底有哪些差异?

上篇说到chroma的近邻搜索算法实现得有问题&#xff0c;不如qdrant的。其实向量数据库之间看似都一样&#xff0c;但细细比较还是有很多不同的。 国外有一系列文章已经讲得很详细了&#xff0c;而且也就是半年前写的&#xff0c;还是具有很强的参考价值&#xff0c;文章如下&a…

最佳 PDF 转 Word 转换器软件,可实现无缝转换

如今&#xff0c;PDF文件格式因其高安全性而被计算机用户所熟悉&#xff0c;这使得无法直接编辑内容。因此&#xff0c;每当用户需要复制内容时&#xff0c;都会遇到很多困难。在这里将介绍了一些可以让您将 PDF 转换为 Word 的工具。 借助高效、免费的 PDF 转 Word 转换器软件…

c语言的数据结构:找环状链表入口处

一起<(&#xffe3;︶&#xffe3;)↗[GO!] 1.如何判断一个链表是否有环 思路:设定两个快慢指针fast和slow,fast每次走两个结点,slow每次走一个节点 如果fast指针遇到了Null,那么这个链表没有环,如果fast和slow可以相遇,则代表这个链表有环 代码如下 N:fast先进环,slow后…

【寸铁的刷题笔记】树、dfs、bfs、回溯、递归(二)

【寸铁的刷题笔记】树、dfs、bfs、回溯、递归(二) 大家好 我是寸铁&#x1f44a; 金三银四&#xff0c;树、dfs、bfs、回溯、递归是必考的知识点✨ 快跟着寸铁刷起来&#xff01;面试顺利上岸&#x1f44b; 喜欢的小伙伴可以点点关注 &#x1f49d; 上期回顾 感谢大家的支持&am…

Linux运维-Web服务器的配置与管理(PHP)

Web服务器的配置与管理(PHP) 项目场景 某企业在CentOS上搭建Web服务系统&#xff0c;以PHP作为网页开发环境&#xff0c;以MySQL为后台数据库。 基础知识 PHP PHP原始为Personal Home Page的缩写&#xff0c;已经正式更名为 “PHP: Hypertext Preprocessor”&#xff08;超…

第1讲-introduction

计算机组成与结构简介 计算机的基本组成 计算机的层次结构

Spring Boot 手写starter!!!

原因&#xff1a;为什么要手写starter&#xff1f;&#xff1f;&#xff1f; 原因&#xff1a;简化功能。 实例&#xff1a;以分页为例&#xff1a;写一个starter。 1.首先定义一个PageX注解。 Target({ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Documented p…

【计算机毕业设计】541鲜花商城系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

pikachu靶场-RCE

介绍&#xff1a; RCE(remote command/code execute)概述 RCE漏洞&#xff0c;可以让攻击者直接向后台服务器远程注入操作系统命令或者代码&#xff0c;从而控制后台系统。 远程系统命令执行 一般出现这种漏洞&#xff0c;是因为应用系统从设计上需要给用户提供指定的远程命…

Pytorch 自用 Scheduler 分享

✅作者简介&#xff1a;人工智能专业本科在读&#xff0c;喜欢计算机与编程&#xff0c;写博客记录自己的学习历程。 &#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&…

TreeData 数据查找

TreeData 数据查找 最近做需求的时候遇到了这样的一个需求&#xff0c;Tree组件数据支持查找&#xff0c;而且TreeData的数据层级是无限级的 开始想的事借助UI组件库&#xff08;Ant-design-vue&#xff09;中的Tree组件的相关方法直接实现,看了下api 发现没法实现&#xff0c;…

【前端素材】推荐优质后台管理系统PORTAL平台模板(附源码)

一、需求分析 后台管理系统是一种具有多层次结构的软件系统&#xff0c;用于管理网站、应用程序或系统的后台操作和管理。下面是对后台管理系统的分层次、详细分析&#xff1a; 第一层&#xff1a;用户界面层 登录界面&#xff1a;提供用户登录验证&#xff0c;确保只有经过授…

Puppeteer 使用实战:如何将自己的 CSDN 专栏文章导出并用于 Hexo 博客(三)

文章目录 往期效果将文章信息导出适配 hexo 的文章模板导出的文章路径问题终端控制执行脚本代码整理结尾 往期 Puppeteer 使用实战&#xff1a;如何将自己的 CSDN 专栏文章导出并用于 Hexo 博客&#xff08;二&#xff09; 效果 写了一个 node 脚本用来批量处理 md 文件 本期…

代码随想录算法训练营第50天|123.买卖股票的最佳时机III、188.买卖股票的最佳时机IV

文章目录 123.买卖股票的最佳时机III思路代码 188.买卖股票的最佳时机IV思路代码 123.买卖股票的最佳时机III 题目链接&#xff1a;123.买卖股票的最佳时机III 文章讲解&#xff1a;代码随想录|123.买卖股票的最佳时机III 视频讲解&#xff1a;123.买卖股票的最佳时机III 思路 …

第九届大数据与计算国际会议 (ICBDC 2024) 即将召开!

2024年第九届大数据与计算国际会议&#xff08;ICBDC 2024&#xff09;将于2024年5月24至26日在泰国曼谷举行。本次会议由朱拉隆功大学工程学院工业工程系主办。ICBDC 2024的宗旨是展示大数据和计算主题相关科学家的最新研究和成果&#xff0c;为来自不同地区的专家代表们提供一…

【多线程】synchronized 关键字 - 监视器锁 monitor lock

synchronized 1 synchronized 的特性1) 互斥2) 可重入 2 synchronized 使用示例1) 修饰代码块: 明确指定锁哪个对象.2) 直接修饰普通方法: 锁的 SynchronizedDemo 对象3) 修饰静态方法: 锁的 SynchronizedDemo 类的对象 3 Java 标准库中的线程安全类 1 synchronized 的特性 1)…