Cod sursa(job #469000)
Utilizator | Data | 5 iulie 2010 17:15:35 | |
---|---|---|---|
Problema | Medie | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include<fstream>
using namespace std;
int n, f[7001], tot;
int main()
{
ifstream fin("medie.in");
ofstream fout("medie.out");
fin >> n;
for (int i = 1, aux; i <= n; ++i)
{
fin >> aux;
++f[aux];
}
int pos;
for (int i = 0; i <= 7000; ++i)
if (f[i] != 0)
{
pos = f[i], --f[i];
for (int j = 0; j <= 7000; ++j)
if (f[j] != 0)
{
pos *= f[j]; --f[j];
if ((i + j) % 2 == 0)
tot += pos * f[(i + j) / 2];
++f[i], ++f[j];
}
}
fout << tot / 2;
}