Pagini recente » Cod sursa (job #1451827) | Cod sursa (job #700330) | Cod sursa (job #3212296) | Cod sursa (job #627500) | Cod sursa (job #1522763)
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int n, x, top, bot, rez, ind1, ind2;
vector<int> v;
int main()
{
int t;
vector<int>::iterator i, j, k, lb, ub;
f>>n;
for (t = 1;t <= n;t++)
{
f>>x;
v.push_back(x);
}
sort(v.begin(), v.end());
for (i = v.begin();(i + 2) != v.end();i++)
for (j = i + 1;(j + 1) != v.end();j++)
{
top = *j + *i;
bot = *j - *i;
lb = lower_bound(v.begin(), v.end(), bot);
ub = upper_bound(v.begin(), v.end(), top);
//g<<bot<<" "<<top<<'\n';
//g<<ind1<<" "<<ind2<<'\n';
rez += ub - max(lb,j);
if (i >= lb && i < ub) rez--;
}
g<<rez;
}