比赛 20130725暑期B班1测 评测结果 AAAAAAAAAA
题目名称 打乒乓球 最终得分 100
用户昵称 cstdio 运行时间 0.006 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2012-07-18 08:48:51
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;
struct cycle{
	int x;
	int y;
	int r;
};
struct cycle big,mid,sma;//big,middle,small
bool belong(int x,int y,struct cycle s){
	int xdec,ydec;
	xdec=x-s.x;
	ydec=y-s.y;
	if(xdec*xdec+ydec*ydec<s.r*s.r) return 1;//打边上不给分
	return 0;
}
int grade(int x,int y){
	if(belong(x,y,sma)) return 3;
	if(belong(x,y,mid)) return 2;
	if(belong(x,y,big)) return 1;
	return 0;//没分
}
int main(){
	freopen("table2.in","r",stdin);
	freopen("table2.out","w",stdout);
	int t,n;
	big.x=30,big.y=30,big.r=20;
	mid.x=100,mid.y=30,mid.r=10;
	sma.x=170,sma.y=30,sma.r=5;
	scanf("%d",&t);
	int i,j;
	int xpos,ypos;
	long sum;
	for(i=1;i<=t;i++){
		sum=0;
		scanf("%d",&n);//每次击球次数
		for(j=1;j<=n;j++){
			scanf("%d%d",&xpos,&ypos);//都是整数
			sum+=grade(xpos,ypos);
		}
		printf("%d\n",sum);
	}
	return 0;
}