158132025-03-03 16:38:04oPletykálkodáscpp17Futási hiba 91/10041ms1532 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);
  }
  auto solve=[&](int a,int b,int c,int d)->void{
    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)){
      return;
    }
    cout<<e.size()*2+4<<endl;
    for(auto[a,b]:e){
      cout<<a<<' '<<b<<endl;
    }
    cout<<a<<' '<<d<<endl;
    cout<<b<<' '<<c<<endl;
    cout<<c<<' '<<d<<endl;
    cout<<a<<' '<<b<<endl;
    reverse(e.begin(),e.end());
    for(auto[a,b]:e){
      cout<<a<<' '<<b<<endl;
    }
    exit(0);
  };
  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]){
          solve(i,j,k,v[k]);
          solve(i,v[k],k,j);
        }
        v[k]=j;
      }
    }
  }
  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<<e.size()*2-1<<'\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;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Futási hiba1ms316 KiB
2Futási hiba1ms316 KiB
3Elfogadva4ms316 KiB
subtask20/9
4Futási hiba1ms316 KiB
5Futási hiba1ms316 KiB
6Futási hiba1ms316 KiB
subtask313/13
7Elfogadva8ms900 KiB
8Elfogadva8ms972 KiB
9Elfogadva8ms916 KiB
subtask416/16
10Elfogadva4ms664 KiB
11Elfogadva4ms756 KiB
12Elfogadva4ms564 KiB
subtask525/25
13Elfogadva1ms316 KiB
14Elfogadva2ms316 KiB
15Elfogadva2ms316 KiB
16Elfogadva1ms316 KiB
17Elfogadva1ms316 KiB
18Elfogadva1ms316 KiB
19Elfogadva1ms316 KiB
subtask613/13
20Elfogadva7ms572 KiB
21Elfogadva7ms564 KiB
22Elfogadva7ms584 KiB
23Elfogadva6ms728 KiB
24Elfogadva4ms564 KiB
25Elfogadva4ms564 KiB
26Elfogadva6ms564 KiB
subtask724/24
27Elfogadva30ms1524 KiB
28Elfogadva30ms1524 KiB
29Elfogadva30ms1532 KiB
30Elfogadva25ms1332 KiB
31Elfogadva28ms1076 KiB
32Elfogadva30ms1160 KiB
33Elfogadva37ms1076 KiB
34Elfogadva41ms1076 KiB
35Elfogadva28ms1076 KiB
36Elfogadva29ms1076 KiB
37Elfogadva28ms1076 KiB