Total Trianglesは人気者
この問題によく出会います。Code GolfはRubyの最短記録が出せなくてうんうん唸ってるうちにPerlゴルファー達にどんどん追い抜かれました^^;PKUでは1163番と3176番が全く同じ問題になってます。GCCならトップ取れるかなーということで。
s['~~'];b,i,n; main(m,k) { for(;~scanf("%d",&k);i=++i<n?i:!++n) m=n?fmax(s[i]=k+fmax(b=s[i],b),m):0; printf("%d",m); }
これより良さそうなアルゴリズムはもう思いつきません。ちょっと変数が多い気がしなくもないので、もう少しスッキリさせたいような無理のような。少しアレンジすると、3176番ではCで最速・GCCで最小メモリを記録することも。