src/cplib/utils/random_helper

  Source   Edit

Procs

proc make_binary_tree_from_sequence(PS: seq[int]): UnWeightedUnDirectedGraph {.
    ...raises: [], tags: [].}
括弧列から二分木を復元   Source   Edit
proc random_01sequence(n: int; one: int): seq[int] {....raises: [], tags: [].}
1の数がoneであるような長さnの01列を一様ランダムに返す   Source   Edit
proc random_binary_tree(n: int): UnWeightedUnDirectedGraph {....raises: [],
    tags: [].}
n頂点の二分木を一様ランダムに返す   Source   Edit
proc random_connected_graph(n, m: int): UnWeightedUnDirectedGraph {....raises: [],
    tags: [].}
ランダムな単純連結グラフを生成。ただし、一様ランダムでない。   Source   Edit
proc random_parenthesis_sequence(n: int): seq[int] {....raises: [], tags: [].}
長さnの括弧列を返す。  1: "(" , -1 : ")"   Source   Edit
proc random_parenthesis_string(n: int): string {....raises: [], tags: [].}
  Source   Edit
proc random_prime(slice: HSlice[int, int]): int {....raises: [], tags: [].}
sliceに含まれる素数を一様ランダムに返す   Source   Edit
proc random_prime_sequence(n: int; slice: HSlice[int, int]; unique: bool = false): seq[
    int] {....raises: [], tags: [].}
  Source   Edit
proc random_simple_graph(n, m: int): UnWeightedUnDirectedGraph {....raises: [],
    tags: [].}
ランダムな単純グラフを作成。   Source   Edit
proc random_tree(n: int): UnWeightedUnDirectedGraph {....raises: [], tags: [].}
n頂点の木を一様ランダムに返す   Source   Edit
proc randomseq(n: int; slice: HSlice[int, int]; unique: bool = false): seq[int] {.
    ...raises: [], tags: [].}
長さn,各要素がsliceに含まれる数列を一様ランダムに返す option: unique = Trueのとき、重複を許さない。   Source   Edit
proc randomseq_from_sum(n: int; sum: int): seq[int] {....raises: [], tags: [].}
長さn,総和がsumである各要素が非負整数である数列を一様ランダムに返す   Source   Edit