首页 > 其他分享 >Nene and the Mex Operator

Nene and the Mex Operator

时间:2024-05-01 16:55:17浏览次数:16  
标签:倒数 数字 Nene 然后 选取 变为 枚举 Operator Mex

这道题目告诉我们的是,看到\(n\)非常小,不一定是搜索,也不一定是状压,还有可能是枚举是否操作

考虑枚举每个不操作的位置,这些位置将序列分成若干个连续段,每一段里面的数字一定会被操作至少一次

当一个数字被操作了至少一次之后,他的值就不会比某次操作的区间长度大,于是我们猜想,一个段里面的所有数字都有可能达到上界,即这个段的长度

考虑构造,我们先将所有数字变为\(0\),然后将最后一个数字变为\(1\),然后选取\([r-1,r]\)将最后两个数字变为\(2\),然后将倒数第二个数字变为\(0\),再将倒数第二个数字变为\(1\),然后选取\([r-2,r]\)将最后三个数字变为\(3\),然后将倒数第二个数字和倒数第三个数字变为\(0\),然后重复之前的过程将倒数第二个数字变为\(2\),倒数第三个数字变为\(1\),然后选取最后四个数字变为\(4\),然后重复以上过程就可以将序列变为\(0,1,2,...,n\)(其中\(n\)是序列长度减一),最后选取整个区间就可以将所有数字变为区间长度

然后我们枚举的过程中统计最大值就好了

标签:倒数,数字,Nene,然后,选取,变为,枚举,Operator,Mex
From: https://www.cnblogs.com/dingxingdi/p/18169460

相关文章

  • CF1956F Nene and the Passing Game 题解
    题目链接点击打开链接题目解法首先答案为连边之后连通块的个数把限制中的\(i,j\)分开,则\(i,j\)能传球当且仅当\(i+l_i\lej-l_j\)且\(j-r_j\lei+r_i\)这是一个二维偏序的形式先考虑怎么暴力做,考虑将\((i+l_i,0),\;(i-l_i,1)\)排序,然后按顺序加入如果碰到操作\(......
  • 从REPLACEMENT_OPERATOR_NEW_AND_DELETE看UE的堆内存管理及gcc相关实现
    观察为了让庞大代码库看起来更简洁一些,UE使用了不少C/C++黑魔法:宏。把一些重复或者繁琐的实现细节隐藏在了宏里面(例如最为常见且繁琐的GENERATED_BODY宏),尽管代码看起来更简洁,但也隐藏了一些(重要的)细节。在看UE插件实现时,意外的看到IMPLEMENT_MODULE宏定义中,不仅包含了初始化......
  • T434199 「LAOI-4」Mex Tower (Hard ver.)
    /* 和上题一样只不过,是换成了检验答案,还是找规律, 自己看看吧awa*///O(n)#pragmaGCCoptimize(2)#include<iostream>#include<algorithm>#include<cstring>#include<ctime>usingnamespacestd;intn,m;strings;charget(chara,charb){ints......
  • T429423 「LAOI-4」Mex Tower (Easy ver.)
    /* 手玩数据找规律 你会发现有很强的规律性*///O(n)#include<iostream>#include<algorithm>#include<cstring>usingnamespacestd;intn,m;strings;intx[3]={2,1,0};inty[3]={2,0,1};intx2[3]={1,0,2};inty2[3]={0,1,2};intmai......
  • Python中operator 模块的用法
    operator模块提供了一套与Python的内置运算符对应的高效率函数。1.函数的种类函数包含的种类有:对象的比较运算、逻辑运算、数学运算和序列运算2.比较运算运算函数语法小于lt(a,b)a<b小于等于le(a,b)a<=b大于gt(a,b)a>b大于等于ge(a,b)......
  • conversion-operator
    参考文档user-definedconversionfunction-cppreference.comTheSafeBoolIdiom-知乎一般形式为operator*type*()const,比如:operatorint()const;operatorbool()const;operatorAA()const;自定义类型转换structTo{To()=default;To(conststru......
  • 3.0 常见operators算子
    1.1卷积相关1)卷积2)反卷积(只能做到近似恢复,无法完全恢复原图像) 参考:https://blog.csdn.net/qq_27261889/article/details/863040611.2线性变换相关1)Linear2)矩阵相乘类:【mm:二维矩阵相乘;bmm:三维矩阵相乘;matmul:多维矩阵相乘,只要两个矩阵能够broadcast即......
  • 30 天精通 RxJS (20):Observable Operators - window, windowToggle, groupBy
    前几天我们讲完了能把HigherOrderObservable转成一般的Observable的operators,今天我们要讲能够把一般的Observable转成HigherOrderObservable的operators。其实前端不太有机会用到这类型的Operators,都是在比较特殊的需求下才会看到,但还是会有遇到的时候。Op......
  • 30 天精通 RxJS (17):Observable Operators - switch, mergeAll, concatAll
    今天我们要讲三个operators,这三个operators都是用来处理HigherOrderObservable。所谓的HigherOrderObservable就是指一个Observable送出的元素还是一个Observable,就像是二维数组一样,一个数组中的每个元素都是数组。如果用泛型来表达就像是Observable<Observab......
  • CF1942B Bessie and MEX 题解
    题目简述给定一个长度为$n$的数组$a$,让你构造一个等长的排列$p$,其中从$0$到$n-1$的每个整数恰好出现一次。满足对于每一个位置$a_i=\texttt{MEX}(p_1,p_2,\ldots,p_i)-p_i$,其中数组的$\texttt{MEX}$是不在该数组中出现的最小非负整数。题目分析我们发现正着做并......