Pagini recente » Cod sursa (job #1803446) | Cod sursa (job #128657) | Cod sursa (job #2399161) | Cod sursa (job #2976534) | Cod sursa (job #984435)
Cod sursa(job #984435)
#include<cstdio>
#include<algorithm>
using namespace std;
int n,i,j,nr,v[801],p,u,mid,nrt;
FILE *f,*g;
int main(){
f=fopen("nrtri.in","r");
g=fopen("nrtri.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++){
fscanf(f,"%d",&v[i]);
}
sort(v+1,v+1+n);
nrt=0;
for(i=1;i<=n;i++){
for(j=i+1;j<=n;j++){
nr=v[i]+v[j];
p=j;
u=n;
while(p<=u){
mid=(p+u)/2;
if((v[mid]<=nr && v[mid+1]>nr) || mid==n)
break;
else if(v[mid]<nr)
p=mid+1;
else
u=mid-1;
}
nrt+=mid-j;
}
}
fprintf(g,"%d",nrt);
fclose(f);
fclose(g);
return 0;
}