This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<stdio.h>
#include<stdlib.h>
#include<algorithm>
struct xy
{
int x, y;
};
int cmp(const xy &aa, const xy &bb)
{
return aa.x<bb.x || (aa.x==bb.x && aa.y<bb.y);
}
xy a[100002];
int n, m, l, g[100002];
int cnt;
int input()
{
int i;
scanf("%d %d %d",&m,&n,&l);
for(i=1 ; i<=m ; i++) scanf("%d",&g[i]);
for(i=1 ; i<=n ; i++) scanf("%d %d",&a[i].x,&a[i].y);
std::sort(g+1,g+1+m);
std::sort(a+1,a+1+n,cmp);
return 0;
}
int process()
{
int i=1, j=1, d;
while(j<=n)
{
if(g[i]+(g[i+1]-g[i])/2+(g[i+1]-g[i])%2<=a[j].x && i!=m) i++;
d=abs(a[j].x-g[i])+a[j].y;
if(d<=l) cnt++;
j++;
}
return 0;
}
int output()
{
printf("%d",cnt);
return 0;
}
int main()
{
input();
process();
output();
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |