首页 > 其他分享 >[DMY]2024 CSP-S 模拟赛 Day 18

[DMY]2024 CSP-S 模拟赛 Day 18

时间:2024-10-19 14:47:48浏览次数:6  
标签:候选 端点 18 线段 赛后 2024 答案 Day DP

今天打的虽然有遗憾,但是也在情理之中。

赛时

看了眼 T1,没有别人的犹豫,第一眼就看到了 \(n\le 5000\),然后开始写最短路。

算了一下 dijkstra 根本跑不满,无需 deque 的 01bfs。

写完以后大概 40min,改一下 longlong 就扔了。

赛后没挂,100pts。

T2 一开始没有思路,在纸上画画图感觉可以线段树搞。但是区间数字种类数我只会莫队,再考虑到动态开点什么的,没有继续下去这个思路。

考虑贪心。之前做过一道类似的题,赛后 liang 大佬说是游荡的奶牛。当时这道题是要让最多的线段不交,模仿类似的方法,我们可以先把 \(a\) 按照右端点排序以后枚举去计算 \(b\) 的贡献。我维护了三个指针,分别代表当前需要考虑的 \(a\) 的范围,当前可以作为答案的候选 \(b\) 的范围,以及当前(即上一次)选择的最靠右的答案的右端点位置。

这样排序过后可以把 \(b\) 左端点都比当前 \(a\) 右端点小的位置全都维护其右端点,插到一个 set 里面。每次贪心的选择当前候选答案中最大的右端点作为答案。

对于无解的情况,就是候选答案为空或者候选答案不符合条件,特判即可。

没有挂分,拿下2血。

T3 想了挺久的,最开始忽略最后一个基环树结构的限制,跑一个纯正的 DP,但是加上最终限制的时候无法直接处理。

思考最终的答案肯定是当前的 DP 值减去这个限制给予的答案,那我只需要找到这个贡献即可。

这个比较好实现,我们把 DP 数组改成三维,新的维度表示第一层选择的元素编号为 \(i\)。

这样可以先预处理前两层的 DP 值,剩下的按照方程:

\[dp_{i,j,k}=\sum_{j=1}^{siz_{i-1}} dp_{i,j,k-1} ~~~~ 条件不想写了 \]

转移就行了。

写完以后算了算可以有 30pts。

此时时间剩的不多,T4 按照题意直接 DP 可以有 10pts,我看 \(a_i=0\) 的性质好像可以写,先估一下。

写完正常 DP 以后发现炸了,意识到数组没赋极小值,脑子抽了赋个 0xff,我不挂谁挂?

意识到之后过了样例。这时候看看刚才的性质发现就是一个愚蠢的线段树。时间还剩 10min,关键时刻我灵机一动,写了一个树状数组,写完以后还剩 2min,接着我意识到题目是取 min,树状数组写不成……

赛后

最终得分 100+100+30+10=240,没有挂分,但是也没有写到能写的分数。

CSP-S下周就考了,所以基础代码能力还需要沉淀。

赛后试了试 10min 能不能写一颗线段树,发现不能。

现在思维方面不算太差,但是容易想偏导致该写的分数没写上去,就比如这次 T4 的初值和线段树部分。

标签:候选,端点,18,线段,赛后,2024,答案,Day,DP
From: https://www.cnblogs.com/Lydic/p/18475900

相关文章

  • Java 初学 day16
    java161、IO流按照流向划分:输入流:外部数据->java程序输出流:java程序->外部数据按照数据类型划分【根据使用记事本打开是否能够看懂来决定】:字节流【万能流】:字节输出流:OutputStream(抽象类)-FileOutputStream(实现......
  • day19
    线程组线程组:将属于同一类的线程划分到同一组中,可以直接对线程组进行设置。ThreadGroup构造方法:ThreadGroup(Stringname)构造一个新的线程组。classMyThread1extendsThread{publicMyThread1(){}publicMyThread1(ThreadGrou......
  • 20241019医学图像的K空间
    空间频率:二维平面上明暗相间的条纹......
  • 【刷题册】2024.10.13 - 2024.10.15
    目录一、2024.10.131.1BC153[NOIP2010]数字统计1.2NC313两个数组的交集1.2.1思路一:暴力O(N^2)1.2.2思路二:hash1.3AB5点击消除二、2024.10.142.1BC64⽜⽜的快递2.2DP4最⼩花费爬楼梯2.3数组中两个字符串的最⼩距离三、2024.10.153.1BC149简写单词3.2dd......
  • 【PS2024】编辑修改、图像制作、广告创意等 PS软件下载安装Adobe Photoshop
    目录一、软件简介1.1AdobePhotoshop概述1.2版本历史1.3系统要求二、下载与安装2.1下载方式2.2安装步骤三、功能介绍3.1基本图像编辑功能3.2高级图像处理功能3.3设计与排版功能四、操作指南4.1界面布局4.2常用快捷键4.3操作技巧一、软件简介1.1......
  • Day9 备战CCF-CSP练习
    Day9题目描述在学习了文本处理后,小\(P\)对英语书中的\(n\)篇文章进行了初步整理。具体来说,小\(P\)将所有的英文单词都转化为了整数编号。假设这\(n\)篇文章中共出现了\(m\)个不同的单词,则把它们从\(1\)到\(m\)进行编号。这样,每篇文章就简化为了一个整数序列,其中......
  • 20222419 2024-2025-1 《网络与系统攻防技术》实验二实验报告
    1.实验内容(1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定)PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程(2)使用socat获取主机操作Shell,任务计划启动(3)使用MSFmeterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行......
  • 2024.10.17~19 杂题
    杂题AcWing5728.截取子串一眼dp,令\(f[i]\)表示考虑到第\(i\)位的答案。由于要求方案数,要么加法原理,要么乘法原理。观察样例二,用乘法原理可以解释但是很难扩展到\(f\)上,所以考虑加法原理。对于样例二,每一个位置字母都一样,不难发现\(f[3]=f[1]+f[2]\)。考虑将其一般化......
  • Day18--命令行传递参数
    Day18--命令行传递参数命令行传参有时候你希望运行一个程序的时候再传递给它消息。这要靠传送命令行参数给main()函数实现。publicclassCommandLine{publicstaticvoidmain(Stringargs[]){for(inti=0;i<args.length;i++){System.out.println("......
  • [随笔]网鼎杯大赛2024真题及赛前培训CTF
    欢迎你来这里,真题题目真没有。赛前培训可以到这里:https://vip.ctf.show/?invite=18742【赛前模拟】10月19日当天前往https://c.wangdingcup.com/#/login可以参加模拟训练。不过这届举办方真有意思,还得10月18日前完成报名的才可以参加。【猜测】官方公众号是10月17日下午......