Submission #623725

#TimeUsernameProblemLanguageResultExecution timeMemory
623725Vladth11Roads (CEOI20_roads)C++14
0 / 100
3 ms596 KiB
#include <bits/stdc++.h> #define C 1 #define P 0 #define debug(x) cerr << #x << " " << x << "\n" #define debugs(x) cerr << #x << " " << x << " " using namespace std; typedef long long ll; typedef pair <int, int> pii; typedef pair <long double, pii> muchie; const ll NMAX = 100001; const ll VMAX = 101; const ll INF = (1LL << 60); const ll MOD = 1000000007; const ll BLOCK = 447; const ll base = 117; const ll nr_of_bits = 18; const ll inv2 = 500000004; map <pii, pii> mp; pii v[NMAX * 2]; struct ura{ pii a, b; }; vector <ura> sol; map <pii, bool> scutit; bool cmp(pii a, pii b){ return a.second < b.second; } int main() { //ifstream cin(".in"); //ofstream cout(".out"); ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n, i; cin >> n; for(i = 1; i <= n; i++){ pii a, b; cin >> a.first >> a.second >> b.first >> b.second; mp[a] = b; mp[b] = a; v[i * 2 - 1] = a; v[i * 2] = b; } sort(v + 1, v + n * 2 + 1, cmp); for(i = 1; i <= n * 2; i++){ int j; if(scutit[v[i]]) continue; for(j = i - 1; j >= 1; j--){ if(mp[v[i]] == v[j]) continue; break; } if(j == 0) continue; scutit[mp[v[i]]] = 1; scutit[mp[v[j]]] = 1; scutit[v[j]] = 1; sol.push_back({v[i], v[j]}); } for(auto x : sol){ cout << x.a.first << " " << x.a.second << " " << x.b.first << " " << x.b.second << "\n"; } return 0; }
#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...