Brief description of the title

若 \(a_i=a_j\) 且 \(1\le i < j\le |a|\)。则删除 \(a_{i}\) 到 \(a_j\) 所有数。求出能删除数列中的数的最大数量。

Solution

考虑动态规划:

状态:

\(f_i\) 表示前 \(i\) 个数里面最多能删除多少个数。

\(maxn_{a_i}\) 表示对于数 \(a_i\),满足 \(a_j=x\) 的最大的 \(f_{i-1}-j+1\) 的值。

状态转移方程

\[f_i=\max(f_{i-1},\max_{1\le j<i \wedge a_i=a_j}f_{j-1}+i-j+1)
\]

可化简为:

\[f_i=\max(f_{i-1},maxn_{a_i}+i+1)
\]

边界

\(f_0=0\)

答案

\(f_n\)

Code

	#include<bits/stdc++.h>
#define int long long
using namespace std;
const int Size=3e6+55;
const int infi=-100e7;//相当于1e9
signed main(){
int t;
cin>>t;
while(t--){
int a[Size],f[Size],maxn[Size],n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i],maxn[i]=infi;
for(int i=1;i<=n;i++){
f[i]=max(f[i-1],maxn[a[i]]+i+1);
maxn[a[i]]=max(maxn[a[i]],f[i-1]-i);
}
cout<<f[n]<<endl;
}
return 0;
}

Solution of CF1842C的更多相关文章

  1. Enterprise Solution 3.1 企业应用开发框架 .NET ERP/CRM/MIS 开发框架,C/S架构,SQL Server + ORM(LLBL Gen Pro) + Infragistics WinForms

    行业:基于数据库的制造行业管理软件,包含ERP.MRP.CRM.MIS.MES等企业管理软件 数据库平台:SQL Server 2005或以上 系统架构:C/S 开发技术 序号 领域 技术 1 数据库 ...

  2. Enterprise Solution 开源项目资源汇总 Visual Studio Online 源代码托管 企业管理软件开发框架

    Enterprise Solution 是一套管理软件开发框架,在这个框架基础上开发出一套企业资源计划系统Enterprise Edition. 现将Enterprise Solution开发过程中遇 ...

  3. Windows 10 部署Enterprise Solution 5.5

    Windows 10正式版发布以后,新操作系统带来了许多的变化.现在新购买的电脑安装的系统应该是Windows 10.与当初用户不习惯Windows 7,购买新电脑后第一个想做的事情就是重装成XP,估 ...

  4. Enterprise Solution 企业资源计划管理软件 C/S架构,支持64位系统,企业全面应用集成,制造业信息化

    Enterprise Solution是一套完整的企业资源计划系统,功能符合众多制造业客户要求.系统以.NET Framework技术作为开发架构,完善的功能可有效地帮助企业进行运营策划,减低成本,如 ...

  5. Dynamics CRM 2015-超大Solution导入问题

    我们在将比较大的solution导入CRM的时候,经常会遇到超时的问题,这是因为CRM的本身的优化限制导致的,那么如何解决呢? 官方已经有了解决方案了. 在浏览完两种解决方法之后,我们要知道的是: 1 ...

  6. WATERHAMMER: A COMPLEX PHENOMENON WITH A SIMPLE SOLUTION

    开启阅读模式 WATERHAMMER A COMPLEX PHENOMENON WITH A SIMPLE SOLUTION Waterhammer is an impact load that is ...

  7. Codility NumberSolitaire Solution

    1.题目: A game for one player is played on a board consisting of N consecutive squares, numbered from ...

  8. codility flags solution

    How to solve this HARD issue 1. Problem: A non-empty zero-indexed array A consisting of N integers i ...

  9. The Solution of UESTC 2016 Summer Training #1 Div.2 Problem C

    Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/C Description standard input/output After ...

  10. The Solution of UESTC 2016 Summer Training #1 Div.2 Problem B

    Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/B Description standard input/output Althou ...

随机推荐

  1. 【转载】 校正Ubuntu时间为北京时间

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_37421762/article/de ...

  2. Auto.js 入门教程

    嗨嗨嗨~~~ 好久没有更新博客了,主要是人变懒了 最近业余有点时间 ,想找点好玩的.自动化脚本让我很感兴趣 既能体验手机自动做事的成就感 又能学习新的东西,挺不错.说干就干 近期主要考察了两个自动化脚 ...

  3. centos7系统 通过编译安装gcc7.5.0

    背景: 现有的centos7 gcc的最高版本为4.8.5 项目需要升级到7.1.0以上 正常方式可以通过以下命令即可完成升级: $ sudo yum install centos-release-s ...

  4. 告别手动调度,海豚调度器 3.1.x 集群部署让你轻松管理多机!

    转载自第一片心意 1 前言 由于海豚调度器官网的集群部署文档写的较乱,安装过程中需要跳转到很多地方进行操作,所以自己总结了一篇可以直接跟着从头到尾进行操作的文档,以方便后续的部署.升级.新增节点.减少 ...

  5. SpringBoot复习

    SpringBoot 开启事务:Application 加@EnableTransactionManagement ,Service方法加@Transaction 注解 注意:@Transaction ...

  6. CH02_数据类型

    CH02_数据类型 数据类型 整型 描述:整型变量表示的是整型类型的数据,C++中能够表示整型的类型有以下几种方式,区别在于所占内存空间不同. 数据类型 占用空间 取值范围 short(短整型) 2字 ...

  7. rk3568 | rk平台GPIO冲突检测小技巧

    上一篇我们讲解了如何编写gpio驱动,但是实际操作中,经常发现gpio引脚被占用的情况发生,那么本篇文章就详细讲解rxw平台下如何快速定位gpio复用问题以及如何解决. 一.GPIO寄存器查找 要想查 ...

  8. Kubernetes-6:Pod生命周期介绍(init Container)

    Pod生命周期 生命周期 1.API server调用kubelet下达Pod创建指令 2.容器环境初始化 3.进入Pod生命周期内(Pod开始创建) 4.Pod只要创建,就会自动生成一个pause容 ...

  9. 前端使用xlsx模板导出表格

    前言 前端导出表格有很多种方案,但是表格样式一旦复杂了,那么就得用代码写excel的样式,还是比较麻烦的.每次样式不一样,就得重新写,这时使用表格模板的优势就体现出来了,想导出不同样式的表格直接修改表 ...

  10. 6.13API接口服务类漏洞探针

    ip地址解析:www.x.x.x.com, 对应网站目录为d:/wwwroot/xiaodi/ 而127.x.x.x,对应网站目录为d:/wwwroot/,可能存在网站备份文件zip,所以ip网址端口 ...