Pagini recente » Cod sursa (job #2500510) | Cod sursa (job #2454151) | Cod sursa (job #2175195) | Cod sursa (job #2635456) | Cod sursa (job #3032607)
#include<iostream>
#include<bits/stdc++.h>
using namespace std;
long long int v[801]={};
int main(){
ifstream in("nrtri.in");
ofstream out("nrtri.out");
long long int n,c=0,t=1;
in>>n;
while(t*2<=n){
t*=2;
}
for(long long int i=1;i<=n;i++){
in>>v[i];
}
sort(v+1,v+n+1);
for(long long int i=1;i<=(n-2);i++){
for(long long int j=i+1;j<=(n-1);j++){
long long int r=0;
for(long long int g=t;g>0;g/=2){
if((r+g)<=n && v[r+g]<=(v[i]+v[j])){
r+=g;
}
}
if(r>j){
c+=(r-j);
}
}
}
out<<c;
}