#include <bits/stdc++.h>
using namespace std;
const int nx=305;
int n, m, cnt, vs[nx], deg[nx], res;
struct info
{
int t, a;
bool operator< (const info &o) const {return t<o.t;}
} d[nx];
int main()
{
cin.tie(NULL)->sync_with_stdio(false);
cin>>n>>m;
for (int i=1; i<=m; i++) cin>>d[i].t;
for (int i=1; i<=m; i++) cin>>d[i].a;
sort(d+1, d+m+1);
for (int i=1; i<=m; i++) for (int j=1; j<i; j++) if (d[i].t-d[j].t>=abs(d[i].a-d[j].a)) deg[i]++;
while (cnt!=m)
{
vector<int> cur;
for (int i=1; i<=m; i++) if (!vs[i]&&!deg[i]) cnt++, vs[i]=1, cur.push_back(i);
res=max(res, (int)cur.size());
for (auto j:cur) for (int i=j+1; i<=m; i++) if (d[i].t-d[j].t>=abs(d[i].a-d[j].a)) deg[i]--;
}
if (res>3) cout<<1/0;
cout<<res;
}
Compilation message (stderr)
Arcade.cpp: In function 'int main()':
Arcade.cpp:30:23: warning: division by zero [-Wdiv-by-zero]
30 | if (res>3) cout<<1/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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |