Pagini recente » Cod sursa (job #1071027) | Cod sursa (job #1025432) | Cod sursa (job #2853375) | Cod sursa (job #1543998) | Cod sursa (job #451710)
Cod sursa(job #451710)
#include<fstream.h>
#include<math.h>
struct triun
{
float st,dr;
};
triun a[1501],aux;
int i,j,n,m,k,nr=0;
int formare(int t,int r)
{
float a1,b1,l,ok=0;
int d;
l=sqrt(pow((a[r].st-a[t].st),2)+pow((a[r].dr-a[t].dr),2));
a1=l/2+a[t].st;
b1=l*sqrt(3)/2+a[t].dr;
for(d=1;d<=n;d++)
if(a[d].st==a1&&a[d].dr==b1&&a[d].st!=a[t].st&&a[d].dr!=a[r].dr)
ok=1;
if(ok)
return 1;
return 0;
}
int main()
{
ifstream f("triang.in");
ofstream g("triang.out");
f>>n;
for(i=1;i<=n;i++)
f>>a[i].st>>a[i].dr;
for(j=1;j<n;j++)
for(k=j+1;k<=n;k++)
if(a[j].st>a[k].st)
{
aux=a[j];
a[j]=a[k];
a[k]=aux;
}
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
if(formare(i,j))
nr++;
g<<nr;
return 0;
}