158122025-03-03 16:32:42oPletykálkodáscpp17Runtime error 78/100280ms132120 KiB
#include <bits/stdc++.h>
using namespace std;

int main() 
{
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  int n,m;
  cin>>n>>m;
  if(n<=10){
    return 1;
  }
  if(n==1){
    cout<<0<<'\n';
    return 0;
  }
  vector<vector<int>>g(n+1);
  for(int i=0;i<m;i++){
    int a,b;
    cin>>a>>b;
    g[a].push_back(b);
    g[b].push_back(a);
  }
  vector<array<int,4>>c;
  for(int i=1;i<=n;i++){
    vector<int>v(n+1);
    for(int j:g[i]){
      for(int k:g[j]){
        if(k==i){
          continue;
        }
        if(v[k]){
          c.push_back({i,j,k,v[k]});
        }
        v[k]=j;
      }
    }
  }
  for(auto[a,b,c,d]:c){
    vector<int>v(n+1);
    vector<pair<int,int>>e;
    auto dfs=[&](auto f,int i)->void{
      for(int j:g[i]){
        if(v[j]){
          continue;
        }
        v[j]=1;
        f(f,j);
        e.emplace_back(i,j);
      }
    };
    v[a]=1;
    v[b]=1;
    v[c]=1;
    v[d]=1;
    dfs(dfs,a);
    dfs(dfs,b);
    if(count(v.begin()+1,v.end(),0)){
      continue;
    }
    cout<<n*2-4<<'\n';
    for(auto[a,b]:e){
      cout<<a<<' '<<b<<'\n';
    }
    cout<<a<<' '<<d<<'\n';
    cout<<b<<' '<<c<<'\n';
    cout<<c<<' '<<d<<'\n';
    cout<<a<<' '<<b<<'\n';
    reverse(e.begin(),e.end());
    for(auto[a,b]:e){
      cout<<a<<' '<<b<<'\n';
    }
    return 0;
  }
  vector<pair<int,int>>e;
  vector<int>v(n+1);
  auto dfs=[&](auto f,int i)->void{
    for(int j:g[i]){
      if(v[j]){
        continue;
      }
      v[j]=1;
      f(f,j);
      e.emplace_back(i,j);
    }
  };
  v[1]=1;
  dfs(dfs,1);
  cout<<n*2-3<<'\n';
  for(auto[a,b]:e){
    cout<<a<<' '<<b<<'\n';
  }
  e.pop_back();
  reverse(e.begin(),e.end());
  for(auto[a,b]:e){
    cout<<a<<' '<<b<<'\n';
  }
  return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Runtime error1ms500 KiB
2Runtime error1ms508 KiB
3Accepted3ms316 KiB
subtask20/9
4Runtime error1ms316 KiB
5Runtime error1ms316 KiB
6Runtime error1ms316 KiB
subtask313/13
7Accepted8ms1076 KiB
8Accepted8ms1076 KiB
9Accepted8ms1088 KiB
subtask416/16
10Accepted229ms132092 KiB
11Accepted231ms132092 KiB
12Accepted280ms132120 KiB
subtask525/25
13Accepted1ms508 KiB
14Accepted1ms316 KiB
15Accepted1ms512 KiB
16Accepted1ms500 KiB
17Accepted1ms344 KiB
18Accepted1ms420 KiB
19Accepted1ms316 KiB
subtask60/13
20Accepted3ms564 KiB
21Wrong answer7ms564 KiB
22Accepted3ms688 KiB
23Accepted6ms564 KiB
24Accepted4ms760 KiB
25Accepted4ms748 KiB
26Accepted4ms564 KiB
subtask724/24
27Accepted14ms1332 KiB
28Accepted14ms1524 KiB
29Accepted14ms1516 KiB
30Accepted30ms1256 KiB
31Accepted35ms1076 KiB
32Accepted43ms1076 KiB
33Accepted52ms1076 KiB
34Accepted63ms928 KiB
35Accepted37ms1208 KiB
36Accepted43ms1076 KiB
37Accepted52ms1168 KiB