Submission #935067

#TimeUsernameProblemLanguageResultExecution timeMemory
935067HossamHero7Odašiljači (COCI20_odasiljaci)C++14
70 / 70
66 ms14024 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; #define endl '\n' struct dsu{ vector<int> par; int comp; dsu(int n){ par.resize(n); iota(par.begin(),par.end(),0); comp = n; } int getP(int node){ if(node == par[node]) return node; return par[node] = getP(par[node]); } void add(int a,int b){ a = getP(a) , b = getP(b); if(a == b) return; par[b] = a; comp --; } }; double dis(pair<int,int> p1 , pair<int,int> p2){ double x1 = p1.first , y1 = p1.second; double x2 = p2.first , y2 = p2.second; return sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)); } void solve(){ int n; cin>>n; vector<pair<int,int>> v(n); for(auto &[x,y] : v) cin>>x>>y; vector<array<double,3>> edges; for(int i=0;i<n;i++){ for(int j=i+1;j<n;j++){ edges.push_back({dis(v[i],v[j])/2,(double)i,(double)j}); } } sort(edges.begin(),edges.end()); dsu ds(n); for(auto [r,a,b] : edges){ ds.add(a,b); if(ds.comp == 1){ cout<<fixed<<setprecision(6)<<r<<endl; return; } } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t=1; //cin>>t; while(t--){ solve(); } return 0; }

Compilation message (stderr)

odasiljaci.cpp: In function 'void solve()':
odasiljaci.cpp:33:15: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   33 |     for(auto &[x,y] : v) cin>>x>>y;
      |               ^
odasiljaci.cpp:42:14: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   42 |     for(auto [r,a,b] : edges){
      |              ^
#Verdict Execution timeMemoryGrader output
Fetching results...