//寻找规律,如果只有一对输出0;
// 如果只有三个挨着的输出1;
// 超过两对的时候,只需要找出相等的对数,对应的下标,
// 相减即可;因为>=两对的时候,两对中的数一定会被修改;
#include <iostream>
#include <algorithm>
#include <cstring>
using namespace std;
const int N=200010;
int n;
int a[N];
void solve()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
int x=0,y=0;
for(int i=1;i<=n-1;i++)
{
if(a[i]==a[i+1])
{
x=i+1;
break;
}
}
for(int i=n;i>=2;i--)
{
if(a[i]==a[i-1])
{
y=i-1;
break;
}
}
if(x==y&&x!=0&&y!=0)
cout<<1<<endl;
else if(y<x)
cout<<0<<endl;
else
cout<<y-x<<endl;
}
int main()
{
int t;
cin>>t;
while(t--)
{
solve();
}
return 0;
}
CF1672C Unequal Array
最新推荐文章于 2024-10-02 10:07:45 发布