verify/collections/rollbackuf_yosupo_test.nim

This documentation is automatically generated by online-judge-tools/verification-helper

:heavy_check_mark: verify/collections/rollbackuf_yosupo_test.nim

Depends on

Code

# verification-helper: PROBLEM https://judge.yosupo.jp/problem/persistent_unionfind
import sequtils, strutils
import cplib/collections/rollback_unionfind
proc scanf(formatstr: cstring){.header: "<stdio.h>", varargs.}
proc ii(): int {.inline.} = scanf("%lld\n", addr result)

var n, q = ii()
var g = newSeqWith(q+1, newseq[(int, int, int)]())
var query = newSeqWith(q+1, newSeq[(int, int, int)]())
var ans = newSeq[int]()
for i in 0..<q:
    var t, k, u, v = ii()
    k += 1
    if t == 0:
        g[k].add((i+1, u, v))
    else:
        query[k].add((ans.len, u, v))
        ans.add(-1)
var uf = initRollbackUnionFind(n)
proc dfs(x: int) =
    for (id, u, v) in query[x]:
        ans[id] = int(uf.issame(u, v))
    for (y, u, v) in g[x]:
        uf.unite(u, v)
        dfs(y)
        uf.undo()
dfs(0)
echo ans.join("\n")
Traceback (most recent call last):
  File "/home/runner/.local/lib/python3.12/site-packages/onlinejudge_verify/documentation/build.py", line 71, in _render_source_code_stat
    bundled_code = language.bundle(stat.path, basedir=basedir, options={'include_paths': [basedir]}).decode()
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/.local/lib/python3.12/site-packages/onlinejudge_verify/languages/nim.py", line 86, in bundle
    raise NotImplementedError
NotImplementedError
Back to top page