比赛 20120416 评测结果 AAAAAAATTT
题目名称 牛类刺绣 最终得分 70
用户昵称 201101 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2012-04-16 12:13:54
显示代码纯文本
/*
UID:cheepok
PID:cowemb
*/

#include<stdio.h>
#include<math.h>

int n,t,ans;

double r,a[50001],b[50001],c[50001];

int main()
{
	freopen("cowemb.in","r",stdin);
	freopen("cowemb.out","w",stdout);
	int i,j;
	double A,B,C,x,y;
	scanf("%d%lf",&n,&r);
	r=r*r;
	for(i=1;i<=n;i++)
	{
		scanf("%lf%lf%lf",&A,&B,&C);
		if(((C*C)/(A*A+B*B))<=r)
		{t++;a[t]=A;b[t]=B;c[t]=C;}
	}
	for(i=1;i<=t;i++)
	{
		for(j=1;j<i;j++)
		{
			if(b[i]==0&&b[j]==0)
			{
				continue;
			}
			else if(a[i]==0&&a[j]==0)
			{
				continue;
			}
			else
			{
				if((a[i]*b[j]-a[j]*b[i])>=-0.00001&&(a[i]*b[j]-a[j]*b[i])<=0.00001)continue;
				x=(b[i]*c[j]-b[j]*c[i])/(a[i]*b[j]-a[j]*b[i]);
				y=-(a[i]*x+c[i])/b[i];
			}
			if((x*x+y*y)<=r)ans++;
		}
	}
	printf("%d\n",ans);
	return 0;
}