Pagini recente » Cod sursa (job #3245472) | Cod sursa (job #2673462) | Cod sursa (job #3199309) | Cod sursa (job #2228304) | Cod sursa (job #241062)
Cod sursa(job #241062)
#include <stdio.h>
#include <algorithm>
#define nmax 805
#define vmax 30005
using namespace std;
int n, v [nmax], f [vmax];
void scan ()
{
int i;
scanf ("%d", &n);
for (i=1; i<=n; ++i)
scanf ("%d", &v [i]);
}
void init ()
{
int i, c=0;
for (i=1; i<=n; ++i)
f [v [i]]=i;
for (i=0; i<=v [n]; ++i)
{
if (!f [i])
f [i]=c;
else
c=f [i];
}
}
int nrtri ()
{
int i, j, num=0;
for (i=1; i<n; ++i)
{
for (j=i+1; j<n; ++j)
num+=f [v [i]+v [j]]-j;
}
return num;
}
int main ()
{
freopen ("nrtri.in", "r", stdin);
freopen ("nrtri.out", "w", stdout);
scan ();
sort (v+1, v+1+n);
init ();
printf ("%d\n", nrtri ());
return 0;
}