比赛 “Asm.Def战记之拉格朗日点”杯 评测结果 WWWWWWWWWW
题目名称 Asm.Def找燃料 最终得分 0
用户昵称 WINAPI 运行时间 0.232 s
代码语言 C++ 内存使用 3.38 MiB
提交时间 2015-11-04 11:33:05
显示代码纯文本
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
struct point{
	double x,y;
	double k[101];
};
int maxx=-1;
point a[101];
int b[101][10001]={0};
int main()
{
	int n;
	freopen("asm_fuel.in","r",stdin);
	freopen("asm_fuel.out","w",stdout);
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		int x,y;
		scanf("%d%d",&x,&y);
		a[i].x=x;
		a[i].y=y;
	}
	for(int i=1;i<=n;i++)
		{for(int j=1;j<=n;j++)
			{
				if(a[i].x-a[j].x==0) a[j].k[i]=20;
				else a[j].k[i]=(int)((a[i].y-a[j].y)/(a[i].x-a[j].x));
//				printf("%.2f ",a[j].k[i]);
			}
//			printf("\n");
		}
	for(int j=1;j<=n;j++)
	{for(int i=1;i<=n;i++)
		{	if(a[j].x==0&&a[j].y==0&&a[i].k[j]!=20) b[j][(int)a[i].k[j]]++;
//			if(a[j].x==0&&a[j].y=0&&a[j].k[j]!=20) b[j][(int)a[i].k[j]]++;
			b[j][(int)a[i].k[j]]++;
		}
	sort(b[j],b[j]+10000);
	}
//	for(int i=1;i<=n;i++)
//		for(int j=1;j<=10000;j++)
//			if(b[i][j])printf("%d ",b[i][j]);
	
	for(int i=1;i<=n;i++)
		for(int j=1;j<=10001;j++)
		{
			
			if(b[i][j]&&b[i][j]>maxx) maxx=b[i][j];
		}
	printf("%d",maxx);
	return 0;		
}