首页 > 其他分享 >ZLOJ 练习74 总结

ZLOJ 练习74 总结

时间:2022-08-25 10:45:23浏览次数:89  
标签:练习 一下 可以 元素 个数 合法 插入 74 ZLOJ

written on 2022-08-17

打得还可以虽然又是倒一hh

前三题中第一题贪心稍微注意一下,想了一段时间还算可以。

可以看一下第四题。这题最大的启示就是:要求的东西只关注最后的形状而不关注过程,因此过程是可以乱排的,为了方便求解,对于这种题我们不妨将其按升序或者降序的方式放置,这样的话状态就会很清晰明确。

具体到这道题,思路还是很巧妙的,解法也很多,这里介绍一种相对好理解的方法。

以下默认元素从小到大插入。

显然是 \(O(n^2)\) 的 dp,然后第一维肯定是当前放到了哪个数。考虑第二维,这里我们将第二维设为目前序列中存在的不合法元素个数,注意这里定义的不合法元素指的是既非山峰又非山谷的那些点(很妙的状态吧)。那么最终的答案就是 \(f_{n,0}\)。

然后这里考虑一次放置对不合法元素个数的影响,显然如果将新的元素放在不合法元素的旁边的话,就一定会减少一个不合法元素,可以手动模拟造一组样例试一下,可以发现,如果原不合法元素数量为 \(x\) 个,那么这样的位置也就是有 \(x\) 个。

接着考虑使其不变的部分,这时我们应当敏锐地察觉到,要求的数列是一个波动数列。根据这个性质,显然,如果在中间(不包括之前说的不合法元素边上的那 \(x\) 个点)插入元素的话,由于其波动性,插入一个元素一定会使不合法元素个数 \(+1\) ,所以我们只考虑两边的情况,由于两边的元素一定不可能是不合法元素(根据我们的定义),所以分类讨论,如果是山峰,那么向内插入元素一定不会构成不合法元素;如果是山谷,向外插入同理,同样可以手动模拟一下,很好理解。

那么剩下的就是会使其增加的了,总共 \(i+1\) 个空,剩下的空就有 \(i+1-x-2=i-x-1\) 个,这些点均可以使其增加。

分类讨论找出决策后,动态规划的转移就不难了,详见代码。

\(E\) 题 好题,和练习68的 \(E\) 以及 P3211 都有异曲同工之妙,结合了高斯消元,不过这题的不同在于需要使用 AC自动机,快速匹配多字符串失配时的情况,具体贴一下别人的题解,可以学习一下。

\(F\) 题的状态去重很烦没搞懂就不管了

标签:练习,一下,可以,元素,个数,合法,插入,74,ZLOJ
From: https://www.cnblogs.com/Freshair-qprt/p/16623474.html

相关文章

  • Java中字节流的总结及代码练习
    Java中的字节流在描述字节流时,先知道什么是流流可以分为:输入流和输出流输入流和输出流示意图:字节流读取内容:二进制,音频,视频优缺点:可以保证视频音频无损,效率低,没有缓......
  • Java基础练习题-错题集(三)
    (1)我们在程序中经常使用“System.out.println()”来输出信息,语句中的System是包名,out是类名,println是方法名。选项:A. 对B.错 (2)以下哪些继承自 Collection 接口()选......
  • 练习正则中,最难以理解的?
    贪婪模式(默认)非贪婪模式?:不使用?:的情况下:达到同样的效果,但代码更精简: ?=只是把:换成了=,但捕获的结果里已经不包含括号中的样式:?!继续把=换成了!,......
  • 手机类练习题
    手机类练习题案例:DemoPhone1类://成员变量Stringbrand;//品牌intprice;//价格Stringcolor;//颜色//成员方法publicvoidcall(Stringwho){System.out.println("......
  • 2022河南萌新联赛第(七)场:南阳理工学院ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛牛客
    2022河南萌新联赛第(七)场:南阳理工学院ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛牛客竞赛OJ(nowcoder.com)1.B-龍_2022河南萌新联赛第(七)场:南阳理工学院(nowcoder.com)......
  • Java基础练习题目
    2.基础练习2.1减肥计划if版本【应用】2.1.1案例需求​ 输入星期数,显示今天的减肥活动​周一:跑步​周二:游泳​周三:慢走​......
  • Redis基础练习题-错题集(一)
    (1)下面关于Redis中set数据类型与list数据类型的比较,正确的说法是()选项A. set中的数据具有唯一性,list中的数据不具有唯一性B. set中的数据有序,list中的数据无序......
  • IPQ6018 wallys OpenWrt 2.4/5G dual bands 802.11ax Indoor Aluminium alloy mater
    QCN9074WiFi6ECardOpenWRT,IPQ6010,802.11ax,2x22.4G&5GQCN9074WiFiCardIPQ6010,802.11ax,2x22.4G&5G,SupportOpenWRT  MT7915/MT7975/IPQ6000/IP......
  • Java基础练习题-错题集(一)
    (1)下面代码输出结果是?classC{C(){System.out.print("C");}}classA{Cc=newC();A(){this("A");System.o......
  • 第四章 7 数据类型-综合 练习题
    第四章7数据类型-综合练习题[基础知识]1在Python中__________表示空类型()[]{}None2列表、元组、字符串是Python的_________(有序?无序)序列有序3Python内置......