Types
PSegmentTree = ref object root: SegmentTreeNode lastnode: int op: proc (l: int; r: int): int e: int
- Source Edit
SegmentTreeNode = ref object value: int left: SegmentTreeNode right: SegmentTreeNode
- Source Edit
Procs
proc initSegmentTree(v: openArray[int]; op: proc (l: int; r: int): int; e: int): PSegmentTree {. ...raises: [Exception], tags: [RootEffect].}
- Source Edit
proc query(st: PSegmentTree; l: int; r: int): int {....raises: [Exception], tags: [RootEffect].}
- Source Edit
proc update(st: PSegmentTree; idx: int; value: int): PSegmentTree {. ...raises: [Exception], tags: [RootEffect].}
- Source Edit