330B - Road Construction - CodeForces Solution


constructive algorithms graphs *1300

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    
    ll n, m;
    cin>>n>>m;
    
    set<ll> st;
    
    for(ll i=1 ; i<=n ; i++)
    st.insert(i);
    
    for(ll i=0 ; i<m ; i++){
        ll a, b;
        cin>>a>>b;
        
        if(st.count(a));
        st.erase(a);
        
        if(st.count(b))
        st.erase(b);
    }
    
    ll center = *(st.begin());
        
    cout<<n-1<<"\n";
    
    for(ll i=1 ; i<=n ; i++){
        if(i == center)
        continue;
            
        cout<<center<<" "<<i<<"\n";
    }
    
	return 0;
}


Comments

Submit
0 Comments
More Questions

1547C - Pair Programming
550A - Two Substrings
797B - Odd sum
1093A - Dice Rolling
1360B - Honest Coach
1399C - Boats Competition
1609C - Complex Market Analysis
1657E - Star MST
1143B - Nirvana
1285A - Mezo Playing Zoma
919B - Perfect Number
894A - QAQ
1551A - Polycarp and Coins
313A - Ilya and Bank Account
1469A - Regular Bracket Sequence
919C - Seat Arrangements
1634A - Reverse and Concatenate
1619C - Wrong Addition
1437A - Marketing Scheme
1473B - String LCM
1374A - Required Remainder
1265E - Beautiful Mirrors
1296A - Array with Odd Sum
1385A - Three Pairwise Maximums
911A - Nearest Minimums
102B - Sum of Digits
707A - Brain's Photos
1331B - Limericks
305B - Continued Fractions
1165B - Polycarp Training