#include using namespace std; using iter = vector::const_iterator; long value(iter start, iter end) { long res = 0; while(start < end - 1) { iter next = start + 1; while(next < end) { res += *start * *next; ++next; } ++start; } return res; } long largestValue(const vector& a) { long max = LONG_MIN; for (iter i = a.begin(); i < a.end() - 1; ++ i) { for (iter j = i + 1; j < a.end(); ++j) { long cur = value(i, j); if(cur > max) max = cur; } } return max; } int main() { int n; cin >> n; vector A(n); for(int A_i = 0; A_i < n; A_i++){ cin >> A[A_i]; } long result = largestValue(A); cout << result << endl; return 0; }