Pagini recente » Cod sursa (job #1583519) | Cod sursa (job #956485) | Cod sursa (job #2122843) | Cod sursa (job #1996277) | Cod sursa (job #1254200)
#include <cstdio>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int a[1001], i, j, k, z, n, ok, aux;
int cauta(int a[], int st, int dr, int k)
{
int r = 0, mij;
while(st <= dr)
{
mij = (st + dr) / 2;
if(a[mij] <= k)
{
r++;
st = mij + 1;
}
else
dr = mij - 1;
}
/*while(a[mij] > a[k])
{
r++;
mij--;
}*/
return r;
}
int main()
{
freopen("nrtri.in", "r", stdin);
freopen("nrtri.out", "w", stdout);
scanf("%d", &n);
for(i = 0; i < n; i++)
scanf("%d", &a[i]);
sort(a, a + n);
for(i = 0; i < n-2; i++)
{
for(j = i+1; j < n-1; j++)
{
z += cauta(a, j+1, n-1, a[i] + a[j]);
}
}
printf("%d", z);
return 0;
}