标签:des style blog io color os sp for 数据
5 3 1 2 4 3 5 3 1 2 4 1
2 3
应该从后开始求最小值,当从后开始只有1个数的时候,最小值就是本身;当从后开始只有2个数的时候,应该是两个数中的最小值;当从后开始只有3个数的时候,
最小值为3个数中的最小值......当从后开始数n个数的时候,最小值为n个数中的最小值,先把这个求出来,然后再遍历比较就可以了。
1 #include<iostream> 2 #include<algorithm> 3 #include<stdio.h> 4 5 6 using namespace std; 7 8 int s[1000100], t[1000100]; 9 int maxx, minn; 10 11 int main() 12 { 13 int n, i, k=1, maxx, minn; 14 while(cin>>n) 15 { 16 k =1; 17 minn = 1e9; 18 maxx = -1e9; 19 for(i=0; i<n; i++) 20 scanf("%d", &s[i]); 21 minn = s[n-1]; 22 t[k++] = minn; 23 for(i=n-2; i>=1; i--)//求最小值 24 { 25 if(s[i]<minn) 26 { 27 t[k++] = s[i]; 28 minn = s[i]; 29 } 30 else 31 { 32 t[k++] = minn; 33 } 34 35 } 36 37 for(i=0; i<n-1; i++) 38 { 39 if( (s[i]-t[n-i-1]) >maxx) 40 { 41 maxx = s[i]-t[n-i-1]; 42 } 43 } 44 printf("%d\n", maxx); 45 } 46 return 0; 47 }
标签:des style blog io color os sp for 数据
原文地址:http://www.cnblogs.com/6bing/p/4133561.html