比赛 “Asm.Def战记之拉格朗日点”杯 评测结果 AAAAAAAAAA
题目名称 Asm.Def找燃料 最终得分 100
用户昵称 KZNS 运行时间 0.017 s
代码语言 C++ 内存使用 0.32 MiB
提交时间 2015-11-04 10:28:00
显示代码纯文本
// KZ's
#include <fstream>
using namespace std;
ifstream fin ("asm_fuel.in");
ofstream fout ("asm_fuel.out");
///////
int n;
int mp[103][3]={0};
///////
void rin() {
	fin>>n;
	int a,b;
	for (int i=0;i<n;i++) {
		fin>>a>>b;
		mp[i][0]=a+10005;
		mp[i][1]=b+10005;
		mp[i][2]=1;
	}
}
int chu(int a,int b) {
	if (!b)
		return 0x7fffffff;
	return a/b;
}
int mod(int a,int b) {
	if (!b)
		return 0x7fffffff;
	return a%b;
}
void work() {
	int a,b,ed=0,s;
	for (int i=0;i<n;i++)
		for (int j=i+1;j<n;j++) {
			if (mp[i][0]==mp[j][0]&&mp[i][1]==mp[j][1]) {
				mp[j][2]=mp[i][2]+1;
				if (mp[j][2]>ed)
					ed=mp[j][2];
				continue;
			}
			s=mp[i][2]+mp[j][2];
			a=chu(mp[i][1]-mp[j][1],mp[i][0]-mp[j][0]);
			b=mod(mp[i][1]-mp[j][1],mp[i][0]-mp[j][0]);
			for (int k=j+1;k<n;k++)
				if (mp[j][0]==mp[k][0]&&mp[j][1]==mp[k][1])
					s++;
				else
					if ( (a==chu(mp[j][1]-mp[k][1],mp[j][0]-mp[k][0])) && (b==mod(mp[j][1]-mp[k][1],mp[j][0]-mp[k][0])) )
						s++;
			if (s>ed)
				ed=s;
		}
	fout<<ed<<endl;
}
/////////
int main() {
	rin();
	work();
	return 0;
}
// UBWH