Cod sursa(job #1856052)
Utilizator | Data | 24 ianuarie 2017 14:31:29 | |
---|---|---|---|
Problema | Medie | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.61 kb |
#include <fstream>
using namespace std;
ifstream f ("medie.in");
ofstream g ("medie.out");
unsigned long long nr;
int n,i,j,v[7001],t,mare,st,dr;
int main()
{
f>>n;
for(i=1;i<=n;++i)
{
f>>t;
++v[t];
if(t>mare) mare=t;
}
for(i=1;i<=mare;++i)
{
nr=nr+(v[i]-2)*(v[i]-1)/2*v[i];
if(v[i])
{
st=i-1;
dr=i+1;
while(st>=1&&dr<=7000)
{
if(v[st]&&v[dr]) nr=nr+v[st]*v[dr]*v[i];
++dr;--st;
}
}
}
g<<nr;
return 0;
}