Pagini recente » Istoria paginii runda/oni2011_9/clasament | Istoria paginii runda/simulareoji_2010_11-12_duminica | Cod sursa (job #1416032) | Cod sursa (job #152588) | Cod sursa (job #1448162)
#include <fstream>
#include <algorithm>
using namespace std;
int n, i, v[805], j, st, dr, mij, nrtri;
ifstream in("nrtri.in");
ofstream out("nrtri.out");
int main(){
in>>n;
for(i=1;i<=n;i++)
{
in>>v[i];
}
sort(v+1, v+n+1);
for(i=1;i<n-1;i++){
for(j=i+1;j<n;j++){
st = j+1;
dr = n;
while(st <= dr){
mij = (st+dr)/2;
if(v[mij] <= v[i]+v[j]){
st = mij+1;
}else{
dr = mij-1;
}
}
nrtri += dr-j;
}
}
out<<nrtri;
out.close();
return 0 ;
}