CF刷题记录

news/2024/11/30 20:30:19/

dp(3):
1、1582F1,a[i]的值范围很小,因此我们可以暴力枚举x,使满足条件时令dp[x^a[i]]=1,那么怎么满足异或出的数列是递增的呢,我们用f[x]记录异或值为x时数列中的最大值,这样通过f数组我们就能判断是否满足条件了。
2、1552D,将a[i]=b[j]-b[k]这种关系看作一条边的话,那么对于b数组可以看作n个点n条边连成的无向图,并且这个图里必定存在一个环,也就是说存在多个a[i]的值取正或负相加等于0这个等式成立,因此我们可以用01背包解决。
3、1547E,这题用前缀最值和后缀最值处理即可。
4、1538F,可以发现对于10的增值来说,我们改变的数的数量是11,并且以此类推得出100为111,那么我们就能将数划分成各个数位计算,最后用数位dp的形式计算总值。
5、1537E1,我们贪心地取则为逐一地和s[0]比较大小,如果小于则直接判断下一个,如果相等则判断s[1],如果大于则直接退出,以此类推得出所能取的最大位置,那么我们答案的串则为相应位置取这些位置上的相应位置即可。
需要注意的是当s[i]小于s[t]时,我们直接令pos=i+1,使得pos的值能贪心的取值而不会出现一直出现相等的情况从而使pos的值没改变。
6、1536C,当我们的比例为a:b时,那么其中能划分的所有块的比例都为a:b,如果我们暴力取的话,贪心来讲一定是从前往后取为a:b时则分为一块,显然我们这样取的块一定都能取完并比例为a:b,这样的话我们的值其实就是前i个位置中比例为a:b的数量,因此用一个map容器即可。
7、1528B,根据下面的样例解释我们可以发现,我们取dp[i]为n为i时的总数量,那么dp[i]=dp[i-1]+dp[i-2]+dp[i-3]+...+dp[1]+i的约数数量,这里求约数数量时我用求n个数的所有约数的方法时超时了,然后改用筛出所有质数及数量计算就过了。求所有约数应该是因为vector分配内存花费了大量时间所以导致超时了。
8、1528A,猜测点的值为左端点或右端点时最优的话,就是典型的树形dp,我们直接枚举点取左端点还是右端点就行了。题解证明:调整法,当我们取a[v]的值为不为端点的一个值时,令p为a[u]>a[v]的数量,q为a[u]<a[v]的数量,分析p,q的大小发现我们取端点最优。
9、1526C1,问题为典型的背包问题,但是ai的值太大,而01背包对问题的优化主要在于按体积划为同一集合,而当体积大且多时就无法实现优化,可以发现n的值比较小,所以我们可以换一种状态表示即dp[i][j]表示取到i这个位置且已经取了j个数的价值的最大值,分析转移即可。
10、1517D,直接暴力,用dp[i][j][k]表示i,j这个位置上走k步的最小代价,可以发现我们走的路线一定是一条的,即去和回是同样的路线,所以当k为偶数时才有值,并且为dp[i][j][k/2]的两倍。
 

 


http://www.ppmy.cn/news/622029.html

相关文章

【CF/其他 经验总结贴】KeyMind篇(一)

【CF/其他 经验总结贴】Key&Mind篇&#xff08;一&#xff09; 食用说明 \&#xff08;‘ - ‘&#xff09;/ 个人训练总结用&#xff0c;主要是关键词联想丰富自己脑洞 Key&Mind 关键词联想小于x的最大可用二分&#xff0c;set配对分组统计每组数量&#xff1b;小…

【解题报告】CF练一下题 | 难度CF2500左右

【解题报告】CF练一下题 | 难度CF2500左右 Ciel and Gondolas | CF321E题意思路 | dp | 决策单调性 | 二维前缀和代码 Least Cost Bracket Sequence | CF3D题意思路 | 贪心代码 Buy Low Sell High | CF865D题意思路 | 贪心 | 可反悔贪心代码 Nearest Leaf | CF1110F题意思路 | …

CF小组训练赛 Holiday 19

A. Balls of Buma 具体题目地址可以直接搜索题目标题 题目大意 "BBWWBB"代表不同颜色的球&#xff0c;要求往这个不同颜色的球构成的球段的某位置放入一个某种颜色的球&#xff0c;如果放入球后&#xff0c;如果某些相同颜色的球段由于上一个动作而变长&#xff0…

2023-06-25:redis中什么是缓存穿透?该如何解决?

2023-06-25&#xff1a;redis中什么是缓存穿透&#xff1f;该如何解决&#xff1f; 答案2023-06-25&#xff1a; 缓存穿透 缓存穿透指的是查询一个根本不存在的数据&#xff0c;在这种情况下&#xff0c;无论是缓存层还是存储层都无法命中。因此&#xff0c;每次请求都需要访…

cf刷题记录- 5 1

文章首发于我的个人博客&#xff1a;欢迎大佬们来逛逛 文章目录 TaixInteresting drinkFenceFancy FenceLaptopsMove BracketsOlesya and RodionIQ testRegistration systemVanya and LanternsT-primesCut Ribbon Taix 问你 n个 1 2 3 4 中&#xff0c; 可以组成多少组&#xf…

neovim 键位映射

neovim 键位映射 neovim的键位映射是指将键盘上的一组按键绑定到vim 插件的某一个功能。 7 种模式 官方文档原文&#xff1a; There are seven sets of mappings For Normal mode: When typing commands. For Visual mode: When typing commands while the Visual area is h…

【Spring Cloud Alibaba Seata 处理分布式事务】——每天一点小知识

&#x1f4a7; S p r i n g C l o u d A l i b a b a S e a t a 处理分布式事务 \color{#FF1493}{Spring Cloud Alibaba Seata 处理分布式事务} SpringCloudAlibabaSeata处理分布式事务&#x1f4a7; &#x1f337; 仰望天空&#xff0c;妳我亦是行人.✨ &#x1f98…

windows10密钥激活失败 0x80072efe

window10&#xff08;专业版&#xff09;正版密钥激活失败&#xff0c;错误代码&#xff1a;0x80072efe. 首先检查密钥是否输错&#xff0c;在没有输错和网络没有问题的情况下&#xff0c;使用正版光盘里面的激活密钥激活系统&#xff0c;出现激活失败无法激活&#xff0c;有时…