题意:给定一个数组,求最小的字数组使得数组里存在至少一对重复元素

题解:每个点求出他的后继在哪,然后每次贪心就这个点到他的后继为一个子数组,求出最小的就是答案

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<string>
#define ll long long
using namespace std;
int T,n,ans;
int a[],nxt[],hd[];
int main()
{
scanf("%d",&T);
while(T--)
{
for(int i=;i<=n;i++)hd[i]=nxt[i]=;
scanf("%d",&n);
for(int i=;i<=n;i++){scanf("%d",&a[i]);nxt[i]=hd[a[i]];hd[a[i]]=i;}
ans=1e9;
for(int i=;i<=n;i++)if(nxt[i])ans=min(ans,i-nxt[i]+);
printf(ans==1e9?"-1\n":"%d\n",ans);
}
return ;
}

最新文章

  1. Lesson 7 Too late
  2. SPSS数据分析—非参数检验
  3. Maven学习总结(二)——Maven项目构建过程练习
  4. C++ const 的全面总结[转]
  5. 模拟I2C从机
  6. centos6 x86 安装 oracle 11g2r 日志
  7. 【转】HLSL基础
  8. java实现树型结构样式
  9. Nutch是个不错的选择
  10. 使用Ant打包Web前台程序
  11. 02-Django框架介绍
  12. @PathVariable和@RequestParam
  13. springboot 中打印 sql 语句
  14. 转载-----BUFG,IBUFG,BUFGP,IBUFGDS等含义以及使用
  15. UVALive 6915 Leveling Ground 倍增RMQ
  16. PGXZ-腾讯全功能分布式关系数据集群
  17. Spark orderBy(desc(&quot;col&quot;))部分数据排序失败
  18. centos7.2 源码编译安装php7.2.4 apache2.4.37 https证书安装
  19. 如何调用另一个python文件中的代码
  20. Art &amp; Material

热门文章

  1. 再谈 COW、ROW 快照技术
  2. 【FICO系列】SAP 关于SAP中的记账码的解释
  3. 应用安全-Web安全-子域名/相关域名
  4. VS2008 项目启动时报:“无法直接启动带有类库输出类型的项目”
  5. oracle--权限的传递
  6. [Python3 填坑] 005 如何“响铃”
  7. 1 Python 新建项目
  8. CentOS7 破解登录密码
  9. Java设计模式——单例模式(static修饰)
  10. Java 13 发布了!