from __future__ import print_function
import random

def pick_random_elements(xs, n):
    for i in range(min(n, len(xs))):
        i1 = random.randrange(i, len(xs))
        yield xs[i1]
        xs[i1] = xs[i]

def manhattan_dist(p0, p1):
    x0, y0 = p0
    x1, y1 = p1
    return abs(x1 - x0) + abs(y1 - y0)
