#include<bits/stdc++.h>
using namespace std;
int a[100010];
queue<pair<int,int>> q;
int main(){
int t;cin>>t;
while(t--){
int n;cin>>n;
for(int i=1;i<=n;i++){
scanf("%d ",&a[i]);
}
int maxn=-1,l=-1,r=-1,flag=0;//flag标记是否在非严格递增区间中
for(int i=2;i<=n+1;i++){//刚刚进入递增区间
if(a[i]>=a[i-1]){
if(flag==0){
l=i-1;
r=i;
flag=1;
}else{
r=i;
}
}else if(flag){//进入递减区间
flag=0;
if(a[r]-a[l]==maxn&&r!=n+1) q.push({l,r});
else if(a[r]-a[l]>maxn){
while(!q.empty()) q.pop();
q.push({l,r});
maxn=a[r]-a[l];
}
}
}
while(!q.empty()) cout<<q.front().first<<" "<<q.front().second<<" ",q.pop();
cout<<'\n';
for(int i=0;i<=n+5;i++) a[i]=0;
}
return 0;
}
全部评论
(0) 回帖