
枚举
文章平均质量分 63
Kanna_STELLA
逸一时 误一世 逸久逸久罢已零
展开
-
枚举时对数组操——三刷AcWing 95. 费解的开关
这次三刷主要是试了下枚举情况操作数组时,操作复制了原数组的新数组,而不是备份原数组,操作原数组,还原原数组,第一次使用略有卡壳。// 如果是对备份后的原数组操作,只要在操作前备份原数组,然后在一轮枚举的末尾还原原数组就可以了。/ 卡壳点:枚举时对数组操作,如果是对复制出来的数组操作,一定要在开始枚举但还没开始操作的时候来复制数组。原创 2023-03-21 21:21:06 · 281 阅读 · 0 评论 -
(数据量大时通过map维护元素的信息来降低枚举复杂度AtCoder - abc233_d 与AtCoder - abc166_e
f[i] + f[j] == j - i可以换成f[i] + i == j - f[j],可以用map来维护任意一边,然后枚举另外一边。且看上去非常贴合朴素枚举的特征,但数据范围不允许朴素枚举(2e5往上)求数组中符合某种性质的情况个数,情况包含数组里的两个元素。卡壳原因是没总结过这种map维护信息的优化,踩陷阱了。这类题的特征是性质可以变换成只包含一个元素的形式。原创 2023-03-18 22:00:47 · 155 阅读 · 0 评论 -
(开关问题)(枚举)(模拟)(位运算)116. 飞行员兄弟
1.一维数模拟二维数组 2.……的遍历原创 2023-03-13 21:43:09 · 398 阅读 · 2 评论 -
(数论)(枚举)(前缀和)1230. K倍区间
求情况数量题 一个数组、字符串内的元素是特殊的某种情况,组合可以形成满足题意的情况:原创 2023-03-13 17:47:12 · 351 阅读 · 2 评论 -
(枚举)(模拟)(二位前缀和)99. 激光炸弹
1.相距为r坐标运算 2.二维前缀和原创 2023-03-13 15:40:51 · 218 阅读 · 0 评论 -
(dfs)(枚举)第十四届蓝桥杯第三次模拟赛:9.最大滑雪长度
我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!原创 2023-03-11 18:16:01 · 611 阅读 · 3 评论 -
第14届蓝桥杯第三次模拟赛:3日期相等
我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!我草,又~在~水~字~数~啦!原创 2023-03-11 17:10:37 · 780 阅读 · 0 评论 -
1229. 日期问题
/ 如果枚举合法日期和日期区间内,再判断是否是输入数据的符合题意的排列的话就可以直接满足第四个性质,不需要储存数据然后再排序。// 要求满足多种性质的情况,首先要思考如何降低题目的复杂性,想下枚举什么可以直接满足更多的性质,枚举什么更加简单。// 枚举合法日期的难度较高,所以选择枚举日期区间内,然后再判断日期是否合法,是否符合排列比较简单。// 这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。// 读题可知以上四条日期要满足的情况,题目的切入点。原创 2023-03-09 21:54:37 · 364 阅读 · 0 评论 -
(模拟)(枚举)acwing蓝桥杯1245. 特别数的和
小明对数位中含有 2、0、1、9 的数字很感兴趣(不包括前导 0),枚举数字然后拆分每一位数来判断是否含有2、0、1、9即可。最多是5 * n,非常ok。范围是1≤n≤10000。数字每一位的拆分枚举。原创 2023-03-08 22:07:59 · 97 阅读 · 0 评论 -
(枚举)(模拟)(前缀和)(数组模拟哈希)(可二分)1236. 递增三元组
/ 即枚举b中元素,求b的第k个元素大于a中元素的个数,和b的第k个元素小于c中元素的个数,然后相乘。//b的第k个元素小于c中元素的个数就是c中元素的个数减去c中小于等于b的第k个元素的个数,即s[N-1] - s[b[i]];// 然后求b的第k个元素大于a中元素的个数就是这个a中小于等于b[k] -1 的元素个数,即s[b[k] - 1]// 前缀和+哈希要先统计a和c的元素个数,然后通过前缀和来得到a和c中小于等于某值的元素个数的数组,所以尽量不要对f[N]赋值,不要用f[N]操作。原创 2023-03-08 22:00:54 · 374 阅读 · 1 评论 -
466. 回文日期
/回文串和区间内容易枚举,但区间内枚举的时间复杂度太高,要枚举8次方级别的数字,而回文串只要枚举一半,即4次方级别,所以此题选择枚举回文串然后做其它两个判断。2.//闰年的判断:(year % 4 == 0 && year % 100|| year % 400 == 0),被四百整除这条经常会漏。//此题的枚举情况,要判断回文串、在区间内和 日期合法。//要判断多个性质,可以直接枚举符合其中一种性质的情况。//回文串的枚举可以只枚举一半,然后通过。//求有多少个类问题,用枚举做。原创 2023-03-08 21:37:08 · 118 阅读 · 0 评论 -
1210. 连号区间数
由此,判断区间是否连号,首先要将区间的最大值和最小值找出来,判断其差值是否等于左右边界指针差值即可。1,2,3,4,区间的边界值即区间的最小值与最大值,且差值与左右边界指针相关。单个数组区间的枚举 O(n * n / 2)首先将区间枚举出来,再判断是否连号即可。的某个排列中有多少个连号区间呢?正常有序的连号区间比如。时间复杂度n*n/2,原创 2023-03-08 21:19:37 · 229 阅读 · 0 评论 -
A. Codeforces Checking(打表枚举)
处理方法是用string或char数组直接储存题目给的量,然后循环枚举其中的元素。用string储存codeforces,遍历其元素与读入的字符比较。类似,都是给出若干常量,用其对输入的量进行处理。用string来读入字符,免去%c的特殊处理。原创 2023-02-09 20:42:40 · 198 阅读 · 0 评论 -
钞票(打表枚举)
一个变量cnt储存钞票数,打一个面值表。算出各变量的值,每次操作后n自模。需要列举出题目给定的数来操作。原创 2022-11-22 14:11:24 · 141 阅读 · 0 评论