Pagini recente » Cod sursa (job #2821054) | Cod sursa (job #2114866) | Cod sursa (job #1097988) | Cod sursa (job #1094858) | Cod sursa (job #283000)
Cod sursa(job #283000)
#include<algorithm>
#define DIM 7001
#define INF 10001
using namespace std;
int n,f[DIM];
long long calc(int a){
int i;
long long p;
if(a<2)
return 0;
for(i=a-1,p=1; i<=a; p*=i++);
for(i=1; i<=2; p/=i++);
return p;}
void solve(){
int i,st,dr,nr,min0,max0;
long long k;
scanf("%d",&n);
for(i=1,min0=INF,max0=0; i<=n; ++i){
scanf("%d",&nr);
if(nr>max0)
max0=nr;
if(nr<min0)
min0=nr;
++f[nr];}
for(i=min0,k=0; i<=max0; ++i){
k+=f[i]*calc(f[i]-1);
for(st=i-1,dr=i+1; st>=min0&&dr<=max0; --st,++dr)
if(f[st]&&f[dr])
k+=f[i]*f[st]*f[dr];}
printf("%lld",k);}
int main(){
freopen("medie.in","r",stdin);
freopen("medie.out","w",stdout);
solve();
return 0;}