题目:在数组中,数字减去它右边的数字得到一个数对之差。求所有数对之差的最大值。例如在数组{2, 4, 1, 16, 7, 5, 11, 9}中,数对之差的最大值是11,是16减去5的结果。
#include<iostream>
using namespace std;
void main()
{
int data[]={2, 4, 1, 16, 7, 5, 11, 9};
int length=sizeof(data)/sizeof(int);
int i;
int compare=data[length-1];
int max=0;
for(i=length-1;i>=0;i--)
{
int temp_sub;
if(data[i]>compare)
{
temp_sub=data[i]-compare;
if(temp_sub>max)
{
max=temp_sub;
}
}
else
{
compare=data[i];
}
}
cout<<max<<endl;
}