Cod sursa(job #2614543)
Utilizator | Data | 11 mai 2020 21:13:54 | |
---|---|---|---|
Problema | Numarare triunghiuri | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.6 kb |
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int v[802];
int main()
{
int n;
fin >> n;
for(int i = 0; i < n; i++)
fin >> v[i];
sort(v, v + n);
int x1 = 0, x2 = 1, y, rez = 0;
while(x2 < n - 1)
{
y = x2 + 1;
while(v[x1] + v[x2] >= v[y] && y < n)
{
y++;
rez++;
}
if(x1 >= x2 - 1 || v[x1 + 1] - v[x1] > v[x2 + 1] - v[x2])
x2++;
else
x1++;
}
fout << rez;
return 0;
}