这个题要求求出满足i<j使得a[i]-a[j]最大,比较简单,直接保持最大值进行减法操作即可。
代码:
#include<cstdio>
#include<iostream>
#define MAX 100001
using namespace std;
int a[MAX];
int main()
{
int cas;
scanf("%d",&cas);
while(cas--)
{
int n;
scanf("%d",&n);
scanf("%d%d",&a[0],&a[1]);
int maxi=max(a[0],a[1]);
int ans=a[0]-a[1];
for(int i=2;i<n;i++)
{
scanf("%d",&a[i]);
maxi=max(a[i],maxi);
if(maxi!=a[i])
ans=max(ans,maxi-a[i]);
}
printf("%d\n",ans);
}
return 0;
}