Submission #124098

#TimeUsernameProblemLanguageResultExecution timeMemory
124098HassenAissaCircle selection (APIO18_circle_selection)C++14
7 / 100
3068 ms88336 KiB
#include <bits/stdc++.h> #define int unsigned long long using namespace std; int32_t main() { map<int,set<pair<int,int> >,greater<int> >circles; map<pair<pair<int,int>,int>,int> memo; vector<pair<pair<int,int>,int> > tab; vector<int> res; int n; int x,y,z; scanf("%llu",&n); res.resize(n); for(int i=0; i<n; i++) { scanf("%llu%llu%llu",&x,&y,&z); circles[z].insert(make_pair(x,y)); memo[make_pair(make_pair(x,y),z)]=i; tab.push_back(make_pair(make_pair(x,y),z)); res[i]=i+1; } map<int,set<pair<int,int> >,greater<int> >::iterator it; int done=0; while(done<=n) { bool test=0; int a,b,c; it=circles.begin(); while((it->second).size()==0) { it++; } c=it->first; a=((it->second).begin())->first; b=((it->second).begin())->second; (it->second).erase((it->second).begin()); done++; for(it=circles.begin(); it!=circles.end(); ++it) { int r=it->first; set<pair<int,int> >::iterator posi; for(posi=(it->second).begin(); posi!=(it->second).end(); ++posi) { int q=posi->first; int p=posi->second; if((c+r)*(c+r)>=(q-a)*(q-a)+(p-b)*(p-b)) { done++; res[memo[make_pair(make_pair(q,p),r)]]=memo[make_pair(make_pair(a,b),c)]+1; (it->second).erase(posi); } } } } for(int i=0; i<n; i++) { printf("%llu ",res[i]); } return 0; }

Compilation message (stderr)

circle_selection.cpp: In function 'int32_t main()':
circle_selection.cpp:28:14: warning: unused variable 'test' [-Wunused-variable]
         bool test=0;
              ^~~~
circle_selection.cpp:14:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%llu",&n);
     ~~~~~^~~~~~~~~~~
circle_selection.cpp:18:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%llu%llu%llu",&x,&y,&z);
         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#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...