Pagini recente » Cod sursa (job #1966821) | Cod sursa (job #269986) | Cod sursa (job #1889283) | Cod sursa (job #3167342) | Cod sursa (job #595035)
Cod sursa(job #595035)
#include <cstdio>
#include <algorithm>
using namespace std;
int main(){
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
int n,v[805];
scanf("%d",&n);
for (int i=0; i<n; ++i)
scanf("%d",v+i);
sort(v,v+n);
long long nr=0;
for (int i=0; i<n-2; ++i)
for (int j=i+1; j<n-1; ++j){
int l=j,r=n-1,m;
while (l <= r){
m=l+(r-l)/2;
if (v[i]+v[j] >= v[m]){
while (m < n && v[i]+v[j] >= v[++m]);
break;
}
else
r=m-1;
}
nr+=m-j-1;
}
printf("%lld",nr);
return 0;
}