11579:Triangle Trouble

問題文
http://uva.onlinejudge.org/external/115/11579.html

辺の長さがいくつか与えられるので
作ることができる三角形の最大の面積を求めなさい。



















ソートして連続する三つの辺を使った三角形が候補になる。
それを全部試して面積を求めた。
面積求めるのはヘロンの公式を使った。

#include<iostream>
#include<algorithm>
#include<vector>
#include<cmath>
#include<cstdio>
 
using namespace std;
 
int main(void){
 
    int t,n;
    cin >> t;
     
    while(t--){
        cin >> n;
        vector<double>v(n);
        for(int i=0;i<n;i++)cin >> v[i];
         
        sort(v.begin(),v.end());
         
        double ans=0.00;
        for(int i=0;i<v.size()-2;i++){
            double a=v[i],b=v[i+1],c=v[i+2];
            double s=(a+b+c)/2,S=sqrt(s*(s-a)*(s-b)*(s-c));
            ans=max(ans,S);
        }
        printf("%.2f\n",ans);
    }
    return 0;
}