原题链接:
1969. 品种邻近 – AcWing题库
高质量的算法题库
https://www.acwing.com/problem/content/1971/
思路:
按题目要求模拟就行了,不要暴力,重点是动态处理,用O(n)的做法就行了
#include <iostream>
#include <cstring>
#include <algorithm>
#include <vector>
using namespace std;
const int M = 1e6+10;
int b[M];
int main()
{
int n,k;
cin>>n>>k;
int ans=-1;
for(int i=1;i<=n;i++)
{
int x;
cin>>x;
if(b[x]&&i-b[x]<=k) ans=max(ans,x);
b[x]=i;
}
cout<<ans;
return 0;
}
作者:机械之忍
链接:https://www.acwing.com/activity/content/code/content/2299720/
来源:AcWing
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
版权声明:本文为qq_50168918原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。