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 <bits/stdc++.h>
using namespace std;
#define endl '\n'
#define intt long long
#define mid (l+r)/2
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
intt n;
cin>>n;
vector<pair<pair<intt,intt>,pair<intt,intt>>>v;
map<intt,intt>m;
for(int i=0;i<n;i++)
{
intt x,y,r;
cin>>x>>y>>r;
v.push_back({{r,-i},{x,y}});
}
sort(v.begin(),v.end());
reverse(v.begin(),v.end());
for(int i=0;i<n;i++)
{intt o=-v[i].first.second;
if(!m[o])
{intt x=v[i].second.first;
intt y=v[i].second.second;
intt r=v[i].first.first;
for(int j=0;j<n;j++)
{intt l=-v[j].first.second;
if(!m[l])
{
intt x1=v[j].second.first;
intt y1=v[j].second.second;
intt r1=v[j].first.first;
intt h=(x-x1)*(x-x1)+(y-y1)*(y-y1);
if(h<=(r+r1)*(r+r1))
{
m[l]=o+1;
}
}
}}
}
for(auto u:m)
cout<<u.second<<" ";
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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |