Submission #252460

#TimeUsernameProblemLanguageResultExecution timeMemory
252460SugardorjCircle selection (APIO18_circle_selection)C++14
7 / 100
3082 ms1048580 KiB
#include <bits/stdc++.h> using namespace std; long long b[323567],c[223456],a[323456],tt,d[234564]; long long x,m,n,t,k,l; long long i , j,r,s,y,z; vector <long long> p[332345]; priority_queue <pair<long long,long long>>q; int main(){ cin>> n; for (i = 1; i <=n; i ++){ cin >>a[i]>>b[i]>>c[i]; q.push({c[i],-i}); for (j = 1; j<i; j ++){ if((a[i]-a[j])*(a[i]-a[j])+(b[i]-b[j])*(b[i]-b[j])<=(c[i]+c[j])*(c[i]+c[j])){ p[i].push_back(j); p[j].push_back(i); } } } for (i = 0; i <n; i ++){ y = -q.top().second; q.pop(); if (d[y]) continue; d[y]=y; //cout << y<<' '; for(auto u:p[y]){ if (d[u]) continue; else d[u] = y; } } for (i = 1; i<=n; i ++) cout << d[i]<<' '; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...