Educational Codeforces Round 76 (Rated for Div. 2) C. Dominated Subarray

Dominated Subarray

题意:给n个数,找出这个数组中出现数字最多且仅出现一次的子区间,简单来想即首尾数字相同区间内各个字符不同。

自我反思:一道简单的思维题,就是理解题意挺费劲的。

#include
#include
#define maxn 200010
using namespace std;
int a[maxn],pre[maxn];
int main() {
	int T;
	cin >> T;
	while(T--) {
		int n,minn=maxn;
		cin >> n;
		for(int i=1;i> a[i];
		for(int i=1;i<=n;i++) {
			if(pre[a[i]]!=-1)
				minn=min(minn,i-pre[a[i]]+1);
			pre[a[i]] = i;
		}
		if(minn==maxn)
			cout<<"-1"<

 

你可能感兴趣的:(思维题)