#include <iostream>
#include <vector>
#include <utility>
#include <cmath>
using namespace std;
typedef pair<int, int> pa;
int vs(pa x, pa y, pa z) {//vektorový súčin
return (z.first-x.first)*(z.second-y.second)
-(z.first-y.first)*(z.second-x.second);
}
int main() {
cout<<"Celkový počet gólov: ";
int n; cin>>n;
if (!n) {
cout<<"Index napínavosti: 0"; return 0;
}
cout<<"Zadaj postupne góly - 0 prvé mužstvo, 1 druhé mužstvo: ";
vector<pa> x; x.push_back(pa(0, 0));
vector<int> y(1, 0);
for (int i=1; i<=n; i++) {
bool c; cin>>c;
x.push_back(pa(x[i-1].first+!c, x[i-1].second+c));
//horný konvexný obal
while (y.size()>=2 && vs(x[y[y.size()-2]], x[y.back()], x[i])<0)
y.pop_back();
y.push_back(i);
}
double s=0;
for (unsigned i=0; i+1<y.size(); i++) s+=vs(x[y[i]], x[y[i+1]], x[0]);
y.clear();
for (int i=n; i>=0; i--) {//dolný konvexný obal
while (y.size()>=2 && vs(x[y[y.size()-2]], x[y.back()], x[i])<0)
y.pop_back();
y.push_back(i);
}
for (unsigned i=0; i+1<y.size(); i++) s+=vs(x[y[i]], x[y[i+1]], x[0]);
cout<<"Index napínavosti: "<<
(s/2)/((x[n].first*x[n].first) >? (x[n].second*x[n].second)) << endl;
cout<<"Index napínavosti finále MS 2002 Slovensko - Rusko: 0.3125." << endl;
}