首页 > 其他分享 >2024.10.6训练记录

2024.10.6训练记录

时间:2024-10-06 21:49:48浏览次数:10  
标签:2024.10 set 迭代 训练 记录 递增 next 维护

下午 cf

A

到!

B

签到题,考场还是写挂了,今天码力差。
挂在while动指针的时候没有判右边界,似。唐诗程度不亚于数组开小。

C1

猜出来结论是第一次出现需要按照一开始的顺序就能过。

C2

把一开始的排列映射到[1, n]。
修改时用set动态维护每个数第一次出现的位置。
把第一次出现位置的序列也开一个set维护,那么最终要满足的条件就是在这个总的set中是单调递增的。
如何维护单调递增:因为是单点修改,可以维护set中满足s[i] < s[next(i)]的数对个数,个数为n-1时就是递增。
这个trick应该会挺泛用的。

几个实现上的注意点:
调用前驱/后继的时候让迭代器自增/自减会很麻烦,写起来不知道到底动到哪了。
可以调用函数prev()、next()。这样迭代器自己不会动。
因为执行序列中不一定每个数都会出现,一开始可以往后面插一个[1, n]防止set越界。

我实际写出来很难看就是了。怎么大家都写那么好看/kel。

标签:2024.10,set,迭代,训练,记录,递增,next,维护
From: https://www.cnblogs.com/docxjun/p/18449461

相关文章

  • 代码随想录算法训练营day7|● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ●
    学习资料:https://programmercarl.com/0015.三数之和.html#其他语言版本学习记录:454.四数相加(hash_dict,前两个数一组遍历a+b,后两个数一组遍历找0-(a+b))点击查看代码classSolution:deffourSumCount(self,nums1:List[int],nums2:List[int],nums3:List[int],nums4:......
  • 代码随想录算法训练营 | 56. 合并区间,738.单调递增的数字
    56.合并区间题目链接:56.合并区间文档讲解︰代码随想录(programmercarl.com)视频讲解︰合并区间日期:2024-10-06想法:重叠区间类似问题Java代码如下:classSolution{publicint[][]merge(int[][]intervals){List<int[]>res=newArrayList<>();Arra......
  • 2024.10 做题记录 /
    CF2004E套用SG函数的结论,我们先打单个游戏的表再异或即可得到答案。首先对于一个大小为\(i\)的堆有\(SG[i]=\text{mex}_{j\boti}\{SG[i-j]\}\),容易暴力dp。intSG[N];intf(intx){ if(SG[x]!=-1)returnSG[x]; if(x==0)returnSG[0]=0; vector<int>g; up(i,1,x......
  • 【CodeForces训练记录】Codeforces Round 977 (Div. 2, based on COMPFEST 16 - Final
    赛后反思做红温了,太菜了,每题都需要WA几次才能过,B题看到MEX选择性害怕,时间复杂度又算错了A题每次选择一对\(a_i,a_j\)把均值插入数组最后面,要想结果最大,对于两个数求均值,最后的结果一定是小于等于其中的较大值,我们可以考虑如何最大化最后一次操作,想到将最大值保留在最后再......
  • java性能调优记录
    五、设计模式调优单例模式最简单的单例模式及问题分析//懒汉模式publicfinalclassSingleton{privatestaticSingletoninstance=null;//不实例化privateSingleton(){if(instance!=null){thrownewRuntimeException("UsegetInstance()methodtoge......
  • 10.5组队训练赛-2024CCPC山东省赛
    10.5组队训练赛-2024CCPC山东省赛成绩4排名8(差3题)写在前面Ika是简单题,但是因为a爆longlong一直没有看出来,导致交了很都发。出现的问题就是代码能力太弱,不能保证一遍过。改错的能力也很弱,没有及时发现出错的地方,一直在题意理解和算法方面打转。浪费时间。J题想了......
  • Nodered学习记录-MQTT
    安装EMQXEMQX(以前称为EMQ)是一个开源的、高度可扩展且高可用的分布式MQTT消息代理,专为物联网(IoT)、机器对机器(M2M)通信和移动应用程序设计。它支持MQTT和其他IoT协议如CoAP/LwM2M,能够处理数百万并发连接,并提供强大的消息路由能力。通过docker安装官方文档$dockerpullem......
  • 代码随想录算法训练营day4|● 24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个
    学习资料:https://programmercarl.com/0024.两两交换链表中的节点.html学习记录:24.两两交换链表中的节点(添加虚拟头节点;交换1、2节点和3、4节点时,要用1前面的cur,先保存1为temp且3保存为temp1,cur指向2,再把2指向temp,因为cur指向2后就与1没关联了)点击查看代码#Definitionforsi......
  • idea源码学习记录-vfs
    参考https://plugins.jetbrains.com/docs/intellij/virtual-file-system.html注:我写笔记用的源码版本是232.8660.185我的idea版本为241.17011.79当前的官方文档用的版本是242.23339.11vfs是idea的虚拟文件系统(VirtualFileSystem)TheVirtualFileSystem(VFS)isa......
  • 代码随想录算法训练营 | 452. 用最少数量的箭引爆气球,435. 无重叠区间,763.划分字母区
    452.用最少数量的箭引爆气球题目链接:452.用最少数量的箭引爆气球文档讲解︰代码随想录(programmercarl.com)视频讲解︰452.用最少数量的箭引爆气球日期:2024-10-05想法:对气球起点排序,没有重叠的箭头+1,有重叠得话将右边置为最小的右边。Java代码如下:classSolution{publ......