序列问题I
Time Limit: 1000 MS Memory Limit: 32768 K
Total Submit: 329(156 users) Total Accepted: 159(136 users) Rating: Special Judge: No
Description
给一个长度为n的整数序列A0,A1,……An-1,找出俩个整数Ai和Aj(i < j),使得Ai - Aj尽量大
Input
输入第一行为数据组数T(T<=20)。每组数据的第一行为整数的个数n(2<=n<=100000)。以下n行,
每行为n个绝对值不超过150000的整数。
Output
对于每组数据,输出Ai-Aj的最大值。
Sample Input
2
3
1 2 3
4
-1 4 3 2
Sample Output
-1
2
Author
陈禹@HRBUST
Submit
Statistic
#include<stdio.h>
#include<algorithm>
using namespace std;
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int a[100003];
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
int ans=a[0]-a[1];
int flag=a[0];
for(int i=1;i<n;i++)
{
ans=max(ans,flag-a[i]);
flag=max(flag,a[i]);
}
printf("%d\n",ans);
}
}