include [HTML_REMOVED]
using namespace std;
int main()
{
int t;
cin>>t;
while(t–)
{
int n;
cin>>n;
int a[2n];/////////////////////////创建2倍大小的数组
for(int i=0;i[HTML_REMOVED]>a[i];
int sb=INT_MIN,k=0;
for(int i=0;i<2n;i)////////////////直接2倍环形数组
{
if(a[i%n])/////////////////////////可以直接取余n这在环形链表数组会遇见的!
k;
else
sb=max(k,sb),k=0;最后比较大小就行了!
}
cout<<sb<<endl;
}
}
环形数组就直接解决了!!!就是创建2个一模一样的数组连着其后面,很多小伙伴会给它赋值2次,其实不必要,直接取余就可以完成了和环形链表类似!!!
那里是k++;