CP-Algorithms Library

This documentation is automatically generated by competitive-verifier/competitive-verifier

View the Project on GitHub cp-algorithms/cp-algorithms-aux

:heavy_check_mark: Eulerian Trail (Directed) (verify/graph/euler_directed.test.cpp)

Depends on

Code

// @brief Eulerian Trail (Directed)
#define PROBLEM "https://judge.yosupo.jp/problem/eulerian_trail_directed"
#pragma GCC optimize("Ofast,unroll-loops")
#pragma GCC target("tune=native")
#include "cp-algo/graph/euler.hpp"
#include <bits/stdc++.h>

using namespace std;
using namespace cp_algo::graph;

void solve() {
    int n, m;
    cin >> n >> m;
    graph<directed> g(n);
    g.read_edges(m);
    auto [v0, es] = euler_trail(g);
    if(ssize(es) != m) {
        cout << "No" << "\n";
    } else {
        cout << "Yes" << "\n";
        cout << v0 << ' ';
        for(auto e: es) {cout << g.edge(e).to << ' ';}
        cout << "\n";
        for(auto e: es) {cout << e / 2 << ' ';}
        cout << "\n";
    }
}

signed main() {
    //freopen("input.txt", "r", stdin);
    ios::sync_with_stdio(0);
    cin.tie(0);
    int t = 1;
    cin >> t;
    while(t--) {
        solve();
    }
}
Traceback (most recent call last):
  File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj_resolve/resolver.py", line 181, in resolve
    bundled_code = language.bundle(path, basedir=basedir)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus.py", line 252, in bundle
    bundler.update(path)
  File "/home/runner/.local/lib/python3.12/site-packages/competitive_verifier/oj/verify/languages/cplusplus_bundle.py", line 327, in update
    assert len(lines) == len(uncommented_lines)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError

Test cases

Env Name Status Elapsed Memory
g++ euler_tour_00 :heavy_check_mark: AC 61 ms 12 MB
g++ euler_tour_01 :heavy_check_mark: AC 61 ms 11 MB
g++ euler_tour_02 :heavy_check_mark: AC 59 ms 10 MB
g++ euler_tour_03 :heavy_check_mark: AC 61 ms 9 MB
g++ example_00 :heavy_check_mark: AC 5 ms 4 MB
g++ example_01 :heavy_check_mark: AC 4 ms 4 MB
g++ many_same_vertex_00 :heavy_check_mark: AC 60 ms 16 MB
g++ many_same_vertex_01 :heavy_check_mark: AC 65 ms 16 MB
g++ many_same_vertex_02 :heavy_check_mark: AC 67 ms 16 MB
g++ max_random_00 :heavy_check_mark: AC 25 ms 7 MB
g++ max_random_01 :heavy_check_mark: AC 25 ms 7 MB
g++ max_random_02 :heavy_check_mark: AC 33 ms 8 MB
g++ max_random_walk_00 :heavy_check_mark: AC 53 ms 15 MB
g++ max_random_walk_01 :heavy_check_mark: AC 56 ms 15 MB
g++ max_random_walk_02 :heavy_check_mark: AC 72 ms 16 MB
g++ mid_random_00 :heavy_check_mark: AC 23 ms 4 MB
g++ mid_random_01 :heavy_check_mark: AC 23 ms 4 MB
g++ mid_random_02 :heavy_check_mark: AC 23 ms 4 MB
g++ mid_random_walk_00 :heavy_check_mark: AC 44 ms 4 MB
g++ mid_random_walk_01 :heavy_check_mark: AC 41 ms 4 MB
g++ mid_random_walk_02 :heavy_check_mark: AC 41 ms 4 MB
g++ small_random_00 :heavy_check_mark: AC 25 ms 4 MB
g++ small_random_01 :heavy_check_mark: AC 24 ms 4 MB
g++ small_random_02 :heavy_check_mark: AC 25 ms 4 MB
g++ small_random_walk_00 :heavy_check_mark: AC 41 ms 4 MB
g++ small_random_walk_01 :heavy_check_mark: AC 41 ms 4 MB
g++ small_random_walk_02 :heavy_check_mark: AC 43 ms 4 MB
Back to top page