blob: 526b915434afe35204840d8b69f27e0806c7940b (
plain) (
tree)
|
|
import algorithm
func searchInMap*[U, T](a: openarray[(U, T)], u: U): int =
when not (typeof(u) is U):
if c > cast[typeof(c)](high(U)):
return -1
binarySearch(a, u, proc(x: (U, T), y: U): int = cmp(x[0], y))
func isInMap*[U, T](a: openarray[(U, T)], u: U): bool =
a.searchInMap(u) != -1
func isInRange*[U](a: openarray[(U, U)], u: U): bool =
let res = binarySearch(a, u, proc(x: (U, U), y: U): int =
if x[0] < y:
-1
elif x[1] > y:
1
else:
0
)
return res != -1
|