Cod sursa(job #1308513)

Utilizator TiberiuDTiberiu Danciu TiberiuD Data 4 ianuarie 2015 12:13:00
Problema Numarare triunghiuri Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream in("nrtri.in");
ofstream out("nrtri.out");

int v[800];

int main()
{
	int n, a, b, p, nr = 0;
	in >> n;
	for(int i = 1; i <= n; i++)
		in >> v[i];
	
	sort(v + 1, v + n + 1);
	
	for(int i = 1; i <= n - 2; i++) {
		a = v[i];
		for(int j = i + 1; j <= n - 1; j++)
		{
			b = v[j];
			p = upper_bound(v + 1, v + n + 1, a + b) - v - 1;
			nr += p - j;
		}
	}
	
	out << nr;
	return 0;
}