比赛 |
NOIP模拟赛by mzx Day1 |
评测结果 |
AAAAAAAAAA |
题目名称 |
为爱追寻 |
最终得分 |
100 |
用户昵称 |
liu_runda |
运行时间 |
6.666 s |
代码语言 |
C++ |
内存使用 |
6.33 MiB |
提交时间 |
2016-10-19 18:43:42 |
显示代码纯文本
#include<cstdio>
#include<algorithm>
using namespace std;
const int maxn=1000005;
struct node{
int x,y;
node(){
}
node(int _x,int _y){
x=_x;y=_y;
}
bool operator <(const node &B)const{
return (x==B.x)?(y<B.y):(x<B.x);
}
bool operator ==(const node &B)const{
return x==B.x&&y==B.y;
}
}lst[maxn];int tot=0;
int main(){
freopen("loverfinding.in","r",stdin);
freopen("loverfinding.out","w",stdout);
int n,x0,y0,x1,y1;
scanf("%d%d%d%d%d",&n,&x0,&y0,&x1,&y1);
int dx,dy;
bool flag=false;
if(x0==x1&&y0==y1){
printf("1\n");
fclose(stdin);fclose(stdout);
return 0;
}
lst[++tot]=node(x0,y0);
while(n--){
scanf("%d%d",&dx,&dy);
x0+=dx;y0+=dy;
lst[++tot]=node(x0,y0);
if(x0==x1&&y0==y1){
flag=true;break;
}
}
if(flag){
sort(lst+1,lst+tot+1);
int ans=0;
for(int i=1;i<=tot;++i){
if(i==1||!(lst[i]==lst[i-1]))ans++;
}
printf("%d\n",ans);
}else{
printf("SingleDogMZX\n");
}
fclose(stdin);fclose(stdout);
return 0;
}