Pagini recente » Cod sursa (job #2732478) | Cod sursa (job #3000687) | Cod sursa (job #2063960) | Cod sursa (job #254394) | Cod sursa (job #401270)
Cod sursa(job #401270)
#include<stdio.h>
int main()
{
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
int n,k,i,j,c=0,p,poz,v[801],s,aux,z;
scanf("%d",&n);
for(k=1;k<=n;k++){
scanf("%d",&v[k]);
}
s=0;
while(s==0){
for(i=1;i<n;i++){
for(j=i+1;j<=n;j++){
s=1;
if(v[i]>v[j]){
aux=v[i];
v[i]=v[j];
v[j]=aux;
s=0;
}
}
}
}
for(z=1;z*2<=n;z*=2);
for(i=1;i<=n-2;i++){
for(j=i+1;j<n;j++){
p=z;
k=v[i]+v[j];
for(poz=0;p;p=p/2){
if(p+poz<=n){
if(v[p+poz]<=k){
poz=poz+p;
}
}
}
if(poz>j&&poz>i){
c=c+poz-j;
}
}
}
printf("%d",c);
return 0;
}