Pagini recente » Cod sursa (job #3176115) | Cod sursa (job #1947013) | Cod sursa (job #502478) | Cod sursa (job #368257) | Cod sursa (job #1357992)
# include <fstream>
# include <algorithm>
# define DIM 810
using namespace std;
ifstream in("nrtri.in");
ofstream out("nrtri.out");
int v[DIM],i,j,n,poz1,poz2,nr;
int caut(int x)
{
int p,u,mij;
p=poz2+1; u=n;
while (p<u)
{
mij=(p+u)/2;
if (v[mij]==x)
{
p=mij;
break;
}
if (v[mij]>x) u=mij;
else p=mij+1;
}
if (v[p]==x && p!=poz1 && p!=poz2) return 1;
return 0;
}
void definitie(int a,int b)
{
int c,ok;
for (c=1;c<=a+b;c++)
{
if (a+b>=c && a+c>=b && b+c>=a)
{
//out<<a<<' '<<b<<' '<<c<<'\n';
ok=caut(c);
if (ok) //out<<a<<' '<<b<<' '<<c<<'\n';
nr++;
}
}
}
int main()
{
in>>n;
for (i=1;i<=n;i++) in>>v[i];
sort(v+1,v+n+1);
for (i=1;i<=n-2;i++)
{
for (j=i+1;j<=n-1;j++)
{
poz1=i;
poz2=j;
definitie(v[i],v[j]);
}
}
out<<nr;
return 0;
}