問題
1862 -- Stripies
方針
- 入力された値を降順ソートする.
- 質量m1とm2の物体があった時, で求められるので, これを先頭から順にやっていく.
コード
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<ctime>
#include<cctype>
#include<climits>
#include<iostream>
#include<string>
#include<vector>
#include<map>
#include<list>
#include<queue>
#include<deque>
#include<algorithm>
#include<numeric>
#include<utility>
#include<complex>
#include<memory>
#include<functional>
#define rep(i, n) REP(i, 0, n)
#define REP(i, a, n) for(int i = a ; i < (int)n ; i++)
#define ALL(v) v.begin(), v.end()
#define pb push_back
using namespace std;
signed main(){
int n;
vector<int> v;
int in;
scanf("%d", &n);
rep(i, n){
cin >> in;
v.pb(in);
}
sort(ALL(v), greater<int>());
double ans = v[0];
REP(i, 1, n){
ans *= v[i];
ans = 2 * sqrt(ans);
}
printf("%.3f\n", ans);
}