http://acm.hdu.edu.cn/showproblem.php?pid=1231
</pre><pre class="cpp" name="code">#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
int n,a[10010],dp[10010],id[10010];
int main(){
// freopen("in.txt", "r", stdin);
while(scanf("%d",&n) != EOF){
if(!n) break;
for(int i=1; i<=n; i++)
scanf("%d",&a[i]);
dp[0] = 0, id[0] = 1;
for(int i=1; i<=n; i++){
if(dp[i - 1] > 0){
dp[i] = dp[i - 1] + a[i];
id[i] = id[i - 1];
}
else{
dp[i] = a[i];
id[i] = i;
}
}
int ans = -1e9, en = n;
for(int i=1; i<=n; i++){
if(dp[i] > ans){
ans = dp[i];
en = i;
}
}
if(ans < 0)
cout << 0 << " " << a[1] << " " << a[n] << endl;
else{
printf("%d %d %d\n", ans, a[id[en]], a[en]);
}
}
return 0;
}