#include<iostream> #include <cstdio> using namespace std; int s[10001],a[10001],f[10001]; int main() { //freopen("test.txt","r",stdin); int n,i,mx,st,ed; bool flag; int tc; scanf("%d",&tc); while(tc--) { int n; scanf("%d",&n); for(i=1; i<=n; i++) scanf("%d",&a[i]); f[1]=a[1]; s[1]=1; for(i=2; i<=n; i++) { if(f[i-1]+a[i]>a[i]) { f[i]=f[i-1]+a[i]; s[i]=s[i-1]; } else { f[i]=a[i]; s[i]=i; } } /* for(i=1;i<=n;i++) cout<<f[i]<<" "; cout<<endl;*/ mx=0; st=1; ed=1; for(i=1; i<=n; i++) { if(f[i]>mx) { mx=f[i]; st=s[i]; ed=i; } if(f[i]==mx) { int l=s[i]; int r=i; if((r-l)<(ed-st)) { st=l; ed=r; } } } if(mx>0) cout<<st<<" "<<ed<<" "<<mx<<endl; else cout<<0<<" "<<0<<" "<<0<<endl; } return 0; } |
Double click to view unformatted code.