比赛 |
NOIP模拟赛by mzx Day1 |
评测结果 |
EETTTEEEEE |
题目名称 |
为爱追寻 |
最终得分 |
0 |
用户昵称 |
残星誓言 |
运行时间 |
8.277 s |
代码语言 |
C++ |
内存使用 |
24.63 MiB |
提交时间 |
2016-10-19 21:12:29 |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
int n,xn,yn,xt,yt;
bool flag=0;
int tot=0;
int ha(int x,int y)
{
int xa=x-2333;
int xb=x-159753;
int xc=x-666521;
int ya=y-8821;
int yb=y-64446688;
int yc=y+5556;
return ((xa*xa)+(xb*xb)+(xc*xc)+(ya*ya)+(yb*yb)+(yc*yc))%100000005;
}
bool vis[100000006];
int main()
{
//printf("vis=%d",sizeof(vis)/1024/1024);
freopen("loverfinding.in","r",stdin);
freopen("loverfinding.out","w",stdout);
scanf("%d%d%d%d%d",&n,&xn,&yn,&xt,&yt);
memset(vis,0,sizeof(vis));
tot++;vis[abs(ha(xn,yn))]=1;
if(xn==xt&&yn==yt)
{
flag=1;
}
if(!flag)
for(int i=1;i<=n;i++)
{
int dx,dy;
scanf("%d%d",&dx,&dy);
xn+=dx;
yn+=dy;
int cd=abs(ha(xn,yn));
if(!vis[cd]) tot++;
vis[cd]=1;
if(xn==xt&&yn==yt)
{
flag=1;
break;
}
}
if(flag)
printf("%d",tot);
else
printf("SingleDogMZX");
}