Pagini recente » Cod sursa (job #441995) | Cod sursa (job #1320234) | Cod sursa (job #260375) | Cod sursa (job #2141481) | Cod sursa (job #240778)
Cod sursa(job #240778)
#include<algorithm>
using namespace std;
int n,a[9001];
/*int cautbin(int x,int y){
int st=x+1,dr=y-1,m;
while(st<=dr){
m=(st+dr)/2;
if(a[m]<=(a[x]+a[y])/2)
st=m+1;
else
dr=m-1;}
return m;}*/
int divide(int p,int q){
int st=p,dr=q,x=a[p];
while(st<dr){
while(st<dr&&a[dr]>=x)
--dr;
a[st]=a[dr];
while(st<dr&&a[st]<=x)
++st;
a[dr]=a[st];
a[st]=x;}
return st;}
void qsort(int p,int q){
int m;
m=divide(p,q);
if(m-1>p)
qsort(p,m-1);
if(m+1<q)
qsort(m+1,q);}
void solve(){
int i,j,l,nr,k=0;
scanf("%d",&n);
for(i=1; i<=n; ++i)
scanf("%d",&a[i]);
qsort(1,n);
for(i=1; i<n-1; ++i)
for(j=i+2; j<=n; ++j){
for(l=i+1; l<j; ++l)
if(a[i]+a[j]==2*a[l])
++k;}
printf("%d",k);}
int main(){
freopen("medie.in","r",stdin);
freopen("medie.out","w",stdout);
solve();
return 0;}