Pagini recente » Cod sursa (job #242255) | Cod sursa (job #2699676) | Cod sursa (job #156418) | Cod sursa (job #2586730) | Cod sursa (job #3294201)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("nrtri.in");
ofstream fout ("nrtri.out");
int caut_bin (int val, int v[], int st, int dr) {
int poz = dr + 1;
while (st <= dr) {
int mij = st + (dr - st) / 2;
if (val <= v[mij]) {
poz = mij;
dr = mij - 1;
}
else
st = mij + 1;
}
return poz;
}
int main () {
int n;
fin >> n;
int v[n + 1];
for (int i = 1; i <= n; ++i)
fin >> v[i];
sort (v + 1, v + n + 1);
int cnt = 0;
for (int i = 1; i <= n - 2; ++i)
cnt += (n - caut_bin (v[i] + v[i + 1], v, i + 2, n) + 1);
fout << cnt;
return 0;
}