#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main()
{
int n,R;
cin>>n>>R;
int a[n],b[n],c[n],d[n];
for (int i=0;i<n;i++)
cin>>a[i]>>b[i]>>c[i]>>d[i];
vector<int> v,v1;
for (int i=0;i<n;i++)
{
c[i]-=a[i],d[i]-=b[i];
int l=-1,r=-1;
for (int t=0;t<=20000;t++)
{
if (a[i]*a[i]+b[i]*b[i]<=R*R)
l=(l==-1?t:l),r=t;
a[i]+=c[i],b[i]+=d[i];
}
if (~l)
v.push_back(l),v1.push_back(r);
}
sort(v.begin(),v.end());
sort(v1.begin(),v1.end());
int ans=0,id=0,id1=0;
for (int i=0;i<=20000;i++)
{
while (id<v.size() && v[id]<=i)
id++;
while (id1<v1.size() && v1[id1]<i)
id1++;
ans=max(ans,id-id1);
}
cout<<ans<<endl;
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... |