Pagini recente » Cod sursa (job #764110) | Cod sursa (job #2032714) | Cod sursa (job #1856142) | Cod sursa (job #2899864) | Cod sursa (job #2018921)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int n,i,j,a[805], x;
long long sol;
int main() {
f >> n;
for (i = 1; i <= n; i++)
f >> a[i];
sort(a+1, a+n+1);
for (i = 1; i <= n; i++) {
for (j = 1; j < i; j++) {
x = a[i]+a[j];
int st = 1, dr = n, mij;
if (x >= a[n]) st = n, dr = 1;
while (st <= dr) {
mij = (st+dr)/2;
if (a[mij] > x)
dr = mij-1;
else st = mij+1;
}
if (a[st] > x) st--;
sol += n-st;
//g << x << ' ' << a[j] << ' ' << a[i] << ' ' << a[st] << '\n';
}
}
g << sol;
}