首页 > 其他分享 >【学习记录】2023年暑期ACM训练

【学习记录】2023年暑期ACM训练

时间:2023-07-19 16:37:59浏览次数:36  
标签:二分 专题 Luogu 练习 暑期 ACM 端点 2023 指针

学习记录

7月16日

集训正式开始前一天,搬东西到了机房,在我的老古董笔记本上配置好了环境。这半个月来基本没有写代码,目前非常生疏。
晚上在VJudge上拉了个热身赛,做了些简单的签到题,稍微找回了些手感。有一道计算几何的题目有思路,但是卡在了代码实现上,毕竟还没有系统学过。

7月17日&7月18日

主题:贪心、差分、二分、双指针、搜索
今天白天尚没有统一布置题单,所以还是自己按这个主题找一些题目来练。

专题练习:贪心

  • Luogu P1209 修理牛棚
    • 很好想思路的贪心,找出前m-1个连续的空牛棚(相连数从多到少排序),将总牛棚数减去这一部分即可。需要特别考虑左右端点处以及m多于空牛棚总数的情况。
  • 邻项交换法

专题练习:搜索

  • Luogu P1596 Lake Counting
    • 一道简单的BFS,写这道题纯粹是为了练练手。以及增加一些切题的成就感。
  • Luogu P4799 世界冰球锦标赛
    • 通过这道题掌握了折半搜索的思想和upper_bound()的用法。
    • 虽然提交的时候T了一个点但是用O2优化过了……无事发生

专题练习:二分

  • Luogu P1873 砍树
    • 非常经典的二分答案,实现思路很简单。然而某人到今天还是没有摸透二分怎么调试,还是用+1 -1以及随机修改各种判断条件来玄学调试……
  • Luogu P3853 路标设置
    • 二分答案模板题,但其实好像还有别的思路也能做?总之最终写了二分。参考《算法竞赛进阶指南》上的二分章节明确了一些概念,二分终于没有出现卡死循环的状况了,可以说是一遍过。

专题练习:双指针

  • Luogu P1102 A-B数对
    • 一道普及-难度的题目,然而实操起来并没有一遍过。尽管需要用到的算法很简单,但如何设计这样的双指针还是有一定思维难度。若把双指针设计为左右端点,则会遇到一个问题:当找到一组可行的解之后,是先动左端点还是先动右端点?无疑这种思路会漏解。
    • 正确的做法是枚举左端点,设置两个右端点,分别定位于可行被减数区间的左端和右端(中间的全部都是相同的数且满足要求),这样只要两指针下标相减就能得到这一左端点下的解的个数。
  • Luogu P8775 青蛙过河
    • 这道题用二分答案和双指针都能写,然后两种方法都试了一次。在双指针部分卡了很久,最终玄学调试过关。同样这道题用双指针也是枚举左端点,然后找最小的符合条件的右端点,并在找到后更新区间长度的最大值。
    • 题目本身难在思路,即发现跳跃能力 y 是合法的 ⟺ 所有长度为 y 的区间内的石头高度和 ≥2x这一规律。然后就是找区间的问题了。
    • 但是双指针的写法掌握得还不够熟练,在边界的处理部分纠结了很久。
  • Luogu P1147 连续自然数和
    • 简单题,只需要掌握双指针的思想很快就能写出来。

知识点积累:对顶堆

对顶堆基于堆的数据结构,在保留较好时间复杂度的同时,解决了朴素堆不便求第k大/小元素的问题。

  • Luogu P1168 中位数
    • 对顶堆能解决的最经典题型。每一轮放入两个数,再维持大根堆和小根堆中元素的数目,使其始终差1即可。奇数个元素的那个堆的堆顶即中位数。
  • Luogu P2085 最小函数值
    • 采用了部分对顶堆的思想辅助接替,维护一个“前m小的函数值”的大根堆,保证快速遍历各个可能的函数值。

7月19日&7月20日

专题练习:单调栈

  • Luogu P5788 单调栈
    • 搞清楚了单调栈是一个怎样的数据结构,并且发现它的原理和实现很简单。但目前还不知道它可以应用在哪些场景,仍需要进一步练习。

计划

练题

7月17日专题

贪心

搜索

双指针

二分

综合

7月19日专题

单调栈

单调队列

ST表

树状数组

学习

标签:二分,专题,Luogu,练习,暑期,ACM,端点,2023,指针
From: https://www.cnblogs.com/marshuni/p/17565958.html

相关文章

  • Day12(2023.07.19)
    行程9:00到达上海电气集团数字科技有限公司(闵行区合川路2555号2号楼)9:30  听老师与公司负责人交谈11:30--13:00   吃饭休息13:30  听老师与公司负责人交谈15:00         实践windows安全检测16:30     ......
  • C/C++以太网布网及故障检测模拟[2023-07-19]
    C/C++以太网布网及故障检测模拟[2023-07-19]“数据结构与算法综合设计”任务书专业:计算机与软件工程学院所有专业年级:2021一、 设计题目以太网布网及故障检测模拟二、 设计内容【问题描述】某个以太网内有n台计算机,由于搭建以太网时工作人员的疏忽,现......
  • [植物记录] 2023春夏
    2023年春夏拍的植物。植物中文名称、科名、拉丁学名摘录自iPlant植物智。朴树[2023-07-18]去系楼领毕业证,又路过了。想着快要离校了再不鉴定一下就没机会了,折了一枝回去对着中国植物志分属分种一条一条地看,确定是朴树了。心满意足。识别过程:榆科1果为核果4叶基部3出脉......
  • 2023年8月19号PMP考试地点已出!请查收
    PMP认证是项目管理专业人士资格认证,是一种国际级的高级人才管理认证。它的主要考试内容就是项目管理体系知识。关于2023年8月19号才聚各考点考场地址,在这里给大家简单介绍一下。8月19日才聚各考点考场地址:深圳才聚1、4-9:广东省深圳市宝安区沙井街道松福大道与帝堂路交口100米深圳市......
  • C/C++数据结构课程设计题目[2023-07-19]
    C/C++数据结构课程设计题目[2023-07-19]数据结构课程设计题目基本要求:1、每人1题,如果系统具有界面以及功能复杂,可以2人合作一题。2、可以自拟题目,难度不低于给定题目,且自拟的题目需要经过老师审核通过。3、要求实现一个界面美观、功能完整、具有实用性的系统。4、不限制......
  • 方芳:2023年南京传媒学院国际新闻与传播学院专访模拟新闻采访稿(初稿)
    记者:谈谈农业技术创新模式和经验启示方芳:农业技术创新是实现农业现代化的重要途径。近年来,我国农业技术创新取得了显著成效,形成了一系列农业技术创新模式和经验,为推进农业现代化提供了有力支撑。一是科技创新与产业化融合模式。通过科技创新与产业化融合,实现了科技成果的快速转......
  • 历年检测、分割、生成算法梳理(2023)
    检测算法 分割算法 生成算法 ......
  • 校招 | 2023届应届生毫米波雷达算法岗秋招经历分享
    本文首发于公众号【调皮连续波】,其他平台为自动同步,同步内容若有不全或乱码,请前往公众号阅读。保持关注调皮哥,获得更多雷达干货学习资料和建议,助力大家轻松、快乐、有方向地学习雷达技术。知乎:https://zhuanlan.zhihu.com/p/576656211。原创作者: @探索Seeker本文经过原创作者同意,......
  • STM32流水灯(2023/7/19)
    1.接线图 2.程序编写#include"stm32f10x.h"//Deviceheader#include"Delay.h"intmain(void){ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); GPIO_InitTypeDefGPIO_InitStructure; GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; GPIO_InitS......
  • STM32闪烁灯(2023/7/19)
     1.添加Delay库文件,新建文件夹,增加Delay的.c和.h文件2.编写代码#include"stm32f10x.h"//Deviceheader#include"Delay.h"intmain(void){ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); GPIO_InitTypeDefGPIO_InitStructure; GPIO_InitStructure.GPIO_Mode......