Cod sursa(job #1523783)

Utilizator retarded_dolphinChivu Stefan retarded_dolphin Data 13 noiembrie 2015 11:06:42
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <iostream>
#include <fstream>
#include <algorithm>


using namespace std;
ifstream in("nrtri.in");
ofstream out("nrtri.out");
int frec[30010];
int v[8010];

int j=0,mem=0;
int sol=0;


bool ver(int poz,int val)
{   
	if(v[poz]<val) return 0;
	return 1;
	
}





int caut(int l,int r,int  val)
{
	int mij=(l+r)/2;
	if(ver(mij,val)){
		if(!ver(mij-1,val))return mij;
		return(l,mij,val);
	}
	return (r,mij,val);
	
	
	
	
}










int main()
{

int n,x,i;

in>>n;
for(i=0;i<n;i++)
	in>>v[i];
sort(v,v+n);

for(i=n-1;i>1;i--)
	for(j=i-1;v[j]>=v[i]/2&&j>0;j--)
		{
		    if(ver(j-1,v[i]-v[j]))sol+=j-caut(0,j,v[i]-v[j]);
		}  


		
	

out<<sol;


return 0;
        
  
  
  
  
  
}